@threedddplus/logoeditor 0.0.211 → 0.0.213

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.
@@ -3,5 +3,5 @@ export interface toastGenProps {
3
3
  type: 'Error' | 'Info' | 'Warning' | 'Success';
4
4
  message: string;
5
5
  }
6
- export declare function CustomToast(type: 'info' | 'error' | 'warning' | 'success', message: string, toastId: number, style?: React.CSSProperties, containerId?: string): string | number | React.JSX.Element;
6
+ export declare function CustomToast(type: 'info' | 'error' | 'warning' | 'success', message: string, toastId: number, style?: React.CSSProperties): React.Key;
7
7
  export declare const toastGen: ({ type, message }: toastGenProps) => React.JSX.Element;
@@ -1,6 +1,3 @@
1
1
  import React from 'react';
2
2
  import './loader.css';
3
- export declare const Loader: ({ position, height }: {
4
- position?: string;
5
- height?: string;
6
- }) => React.JSX.Element;
3
+ export declare const Loader: () => React.JSX.Element;
@@ -1772,15 +1772,7 @@ var SnapToCenter = function SnapToCenter(props) {
1772
1772
  })(props);
1773
1773
  };
1774
1774
 
1775
- function CustomToast(type, message, toastId, style, containerId) {
1776
- if (containerId === void 0) {
1777
- containerId = "logoEditor";
1778
- }
1779
- var _C = reactToastify.toast.isActive(toastId);
1780
- console.log(containerId);
1781
- if (_C) {
1782
- return React__default.createElement(React__default.Fragment, null);
1783
- }
1775
+ function CustomToast(type, message, toastId, style) {
1784
1776
  switch (type) {
1785
1777
  case 'info':
1786
1778
  return reactToastify.toast.info(toastGen({
@@ -1788,8 +1780,7 @@ function CustomToast(type, message, toastId, style, containerId) {
1788
1780
  message: message
1789
1781
  }), {
1790
1782
  toastId: toastId,
1791
- style: style,
1792
- containerId: containerId
1783
+ style: style
1793
1784
  });
1794
1785
  case 'error':
1795
1786
  return reactToastify.toast.error(toastGen({
@@ -1798,8 +1789,7 @@ function CustomToast(type, message, toastId, style, containerId) {
1798
1789
  }), {
1799
1790
  toastId: toastId,
1800
1791
  icon: Error$1,
1801
- style: style,
1802
- containerId: containerId
1792
+ style: style
1803
1793
  });
1804
1794
  case 'success':
1805
1795
  return reactToastify.toast.success(toastGen({
@@ -1807,8 +1797,7 @@ function CustomToast(type, message, toastId, style, containerId) {
1807
1797
  message: message
1808
1798
  }), {
1809
1799
  toastId: toastId,
1810
- style: style,
1811
- containerId: containerId
1800
+ style: style
1812
1801
  });
1813
1802
  case 'warning':
1814
1803
  return reactToastify.toast.warning(toastGen({
@@ -1816,8 +1805,7 @@ function CustomToast(type, message, toastId, style, containerId) {
1816
1805
  message: message
1817
1806
  }), {
1818
1807
  toastId: toastId,
1819
- style: style,
1820
- containerId: containerId
1808
+ style: style
1821
1809
  });
1822
1810
  }
1823
1811
  }
@@ -1879,7 +1867,7 @@ var toastMessages =
1879
1867
  return CustomToast('info', 'Please select the IMAGE / TEXT to delete', 14);
1880
1868
  },
1881
1869
  pleaseSelectTheImageDulpicate: function pleaseSelectTheImageDulpicate() {
1882
- return CustomToast('info', 'Please select the IMAGE / TEXT to duplicate', 150);
1870
+ return CustomToast('info', 'Please select the IMAGE / TEXT to duplicate', 15);
1883
1871
  },
1884
1872
  applyLogoColorNotAvailable: function applyLogoColorNotAvailable(decType) {
1885
1873
  return CustomToast('error', "A few of the colors associated with decoration \"" + decType + "\" are not supported. Please use the \"Edit\" option to update them with supported colors and proceed!", 16);
@@ -3879,6 +3867,52 @@ TIFFParser.prototype = {
3879
3867
  }
3880
3868
  };
3881
3869
 
3870
+ var prepocessSvgData = function prepocessSvgData(svgData, objects) {
3871
+ svgData.forEach(function (resItem) {
3872
+ var path;
3873
+ var node;
3874
+ objects == null ? void 0 : objects.forEach(function (item) {
3875
+ //@ts-ignore
3876
+ if (item.id === resItem.path) {
3877
+ path = item;
3878
+ //@ts-ignore
3879
+ } else if (item.id === resItem.element) {
3880
+ node = item;
3881
+ }
3882
+ });
3883
+ if (node && path) {
3884
+ var _resItem$node$childre, _resItem$node$childre2;
3885
+ var fontSize = (_resItem$node$childre = resItem.node.children[0]) == null ? void 0 : (_resItem$node$childre2 = _resItem$node$childre.getAttribute('font-size')) == null ? void 0 : _resItem$node$childre2.replace('px', '');
3886
+ node.set({
3887
+ path: path,
3888
+ top: path.top,
3889
+ left: path.left,
3890
+ textAlign: 'center',
3891
+ pathStartOffset: path.width * parseFloat(resItem.node.startOffset.baseVal.valueAsString) / 100,
3892
+ // fontFamily: resItem.node.children[0].getAttribute("font-family"),
3893
+ fontSize: fontSize || 25
3894
+ });
3895
+ node.setCoords();
3896
+ }
3897
+ });
3898
+ };
3899
+ var setDimensions = function setDimensions(loadedObject, canvasWidth, canvasHeight) {
3900
+ var val = 300;
3901
+ if ((loadedObject.width <= 200 || loadedObject.height <= 200) && (loadedObject.minX === -0 || loadedObject.minX)) {
3902
+ val = 600;
3903
+ }
3904
+ if (Math.ceil(loadedObject.width + loadedObject.left + 45) >= Math.floor(canvasWidth)) {
3905
+ loadedObject.scaleToWidth(val);
3906
+ } else if (Math.ceil(loadedObject.height + loadedObject.top + 10) >= Math.floor(canvasHeight)) {
3907
+ loadedObject.scaleToHeight(val);
3908
+ } else if (Math.ceil(loadedObject.left) < 0) {
3909
+ loadedObject.scaleToWidth(val);
3910
+ } else if (Math.ceil(loadedObject.top) < 0) {
3911
+ loadedObject.scaleToHeight(val);
3912
+ } else if (loadedObject.width < 200 || loadedObject.height < 200) {
3913
+ loadedObject.scaleToWidth(val);
3914
+ }
3915
+ };
3882
3916
  var converterSlice = function converterSlice(set, get) {
3883
3917
  var processImage = function processImage(svgstr, colorValue, canvasToLoad, addCheckerBox) {
3884
3918
  if (canvasToLoad === void 0) {
@@ -3893,52 +3927,11 @@ var converterSlice = function converterSlice(set, get) {
3893
3927
  var _canvasToLoad, _use3dddPlus$getState;
3894
3928
  var svgData = getDesignConceptSVGData(svgstr);
3895
3929
  var loadedObject = fabric.fabric.util.groupSVGElements(objects, options);
3896
- console.log("SVG DATA--->", svgData);
3897
- svgData.forEach(function (resItem) {
3898
- var path;
3899
- var node;
3900
- objects == null ? void 0 : objects.forEach(function (item) {
3901
- //@ts-ignore
3902
- if (item.id === resItem.path) {
3903
- path = item;
3904
- //@ts-ignore
3905
- } else if (item.id === resItem.element) {
3906
- node = item;
3907
- }
3908
- });
3909
- if (node && path) {
3910
- var _resItem$node$childre, _resItem$node$childre2;
3911
- var fontSize = (_resItem$node$childre = resItem.node.children[0]) == null ? void 0 : (_resItem$node$childre2 = _resItem$node$childre.getAttribute('font-size')) == null ? void 0 : _resItem$node$childre2.replace('px', '');
3912
- node.set({
3913
- path: path,
3914
- top: path.top,
3915
- left: path.left,
3916
- textAlign: 'center',
3917
- pathStartOffset: path.width * parseFloat(resItem.node.startOffset.baseVal.valueAsString) / 100,
3918
- // fontFamily: resItem.node.children[0].getAttribute("font-family"),
3919
- fontSize: fontSize || 25
3920
- });
3921
- node.setCoords();
3922
- }
3923
- });
3930
+ prepocessSvgData(svgData, objects);
3924
3931
  var canvas = (_canvasToLoad = canvasToLoad) != null ? _canvasToLoad : use3dddPlus.getState().popupCanv;
3925
3932
  var canvasWidth = canvas.width;
3926
3933
  var canvasHeight = canvas.height;
3927
- var val = 300;
3928
- if ((loadedObject.width <= 200 || loadedObject.height <= 200) && (loadedObject.minX === -0 || loadedObject.minX)) {
3929
- val = 600;
3930
- }
3931
- if (Math.ceil(loadedObject.width + loadedObject.left + 45) >= Math.floor(canvasWidth)) {
3932
- loadedObject.scaleToWidth(val);
3933
- } else if (Math.ceil(loadedObject.height + loadedObject.top + 10) >= Math.floor(canvasHeight)) {
3934
- loadedObject.scaleToHeight(val);
3935
- } else if (Math.ceil(loadedObject.left) < 0) {
3936
- loadedObject.scaleToWidth(val);
3937
- } else if (Math.ceil(loadedObject.top) < 0) {
3938
- loadedObject.scaleToHeight(val);
3939
- } else if (loadedObject.width < 200 || loadedObject.height < 200) {
3940
- loadedObject.scaleToWidth(val);
3941
- }
3934
+ setDimensions(loadedObject, canvasWidth, canvasHeight);
3942
3935
  //@ts-ignore
3943
3936
  var objImage = loadedObject == null ? void 0 : loadedObject._objects;
3944
3937
  if (!objImage) {
@@ -3947,6 +3940,7 @@ var converterSlice = function converterSlice(set, get) {
3947
3940
  var _Fills = [];
3948
3941
  var fillCounts = {};
3949
3942
  var colorObjects = {};
3943
+ // Identify and Count Fill Colors
3950
3944
  if (objImage) {
3951
3945
  objImage.forEach(function (ele) {
3952
3946
  var _ele$id;
@@ -3976,10 +3970,57 @@ var converterSlice = function converterSlice(set, get) {
3976
3970
  use3dddPlus.setState({
3977
3971
  loadedObject: objImage
3978
3972
  });
3973
+ // Extract Top Colors
3979
3974
  var sortedFillColors = Object.keys(fillCounts).sort(function (a, b) {
3980
3975
  return fillCounts[b] - fillCounts[a];
3981
3976
  });
3982
3977
  var topColors = sortedFillColors.slice(0, colorValue);
3978
+ // Map Colors to Their Closest Dominant Colors
3979
+ var colorMap = {};
3980
+ sortedFillColors.forEach(function (color) {
3981
+ var closestColor = topColors.reduce(function (prev, curr) {
3982
+ var prevDiff = euclideanDistance(color, prev);
3983
+ var currDiff = euclideanDistance(color, curr);
3984
+ return prevDiff < currDiff ? prev : curr;
3985
+ });
3986
+ colorMap[color] = closestColor;
3987
+ });
3988
+ // Apply Updated Colors to Objects
3989
+ if (objImage) {
3990
+ objImage.forEach(function (ele) {
3991
+ ele.set({
3992
+ fill: colorMap[ele.fill.toString()]
3993
+ });
3994
+ });
3995
+ }
3996
+ // Re-calculate colorObjects
3997
+ if (objImage) {
3998
+ objImage.forEach(function (ele) {
3999
+ var _ele$id2;
4000
+ ele.set({
4001
+ strokeWidth: 0
4002
+ });
4003
+ ele.set({
4004
+ id: (_ele$id2 = ele.id) != null ? _ele$id2 : use3dddPlus.getState().guid()
4005
+ });
4006
+ if (typeof ele.fill === 'string' && ele.fill !== '') {
4007
+ set({
4008
+ fillColor: [].concat(ele.fill)
4009
+ });
4010
+ var fillColor = ele.fill.toString();
4011
+ var pixelCount = ele.width * ele.height;
4012
+ fillCounts[fillColor] = (fillCounts[fillColor] || 0) + pixelCount;
4013
+ if (colorObjects[fillColor]) {
4014
+ colorObjects[fillColor].objects.push(ele.get('id'));
4015
+ } else {
4016
+ colorObjects[fillColor] = {
4017
+ objects: [ele.get('id')]
4018
+ };
4019
+ }
4020
+ }
4021
+ });
4022
+ }
4023
+ // Convert Colors to Hex & Store
3983
4024
  var colorObjectsHex = {};
3984
4025
  topColors.map(function (e) {
3985
4026
  if (e.search('#') === -1) {
@@ -3993,6 +4034,7 @@ var converterSlice = function converterSlice(set, get) {
3993
4034
  colorObjectsHex[e] = colorObjects[e];
3994
4035
  }
3995
4036
  });
4037
+ // Store Colors in State
3996
4038
  //@ts-ignore
3997
4039
  set({
3998
4040
  fillColor: get().removeDuplicates(_Fills)
@@ -4022,6 +4064,7 @@ var converterSlice = function converterSlice(set, get) {
4022
4064
  use3dddPlus.setState({
4023
4065
  defaultColorFillCopy: defaultCF
4024
4066
  });
4067
+ // Step 5: Assign Closest Colors to Objects
4025
4068
  function euclideanDistance(color1, color2) {
4026
4069
  var c1 = new fabric.fabric.Color(color1).getSource();
4027
4070
  var c2 = new fabric.fabric.Color(color2).getSource();
@@ -4030,22 +4073,7 @@ var converterSlice = function converterSlice(set, get) {
4030
4073
  var diffB = c1[2] - c2[2];
4031
4074
  return Math.sqrt(Math.pow(diffR, 2) + Math.pow(diffG, 2) + Math.pow(diffB, 2));
4032
4075
  }
4033
- var colorMap = {};
4034
- sortedFillColors.forEach(function (color) {
4035
- var closestColor = topColors.reduce(function (prev, curr) {
4036
- var prevDiff = euclideanDistance(color, prev);
4037
- var currDiff = euclideanDistance(color, curr);
4038
- return prevDiff < currDiff ? prev : curr;
4039
- });
4040
- colorMap[color] = closestColor;
4041
- });
4042
- if (objImage) {
4043
- objImage.forEach(function (ele) {
4044
- ele.set({
4045
- fill: colorMap[ele.fill.toString()]
4046
- });
4047
- });
4048
- }
4076
+ // Step 6: Add Checkerboard Background (Optional)
4049
4077
  if (addCheckerBox) {
4050
4078
  loadedObject.set({
4051
4079
  colorFill: fillColors,
@@ -4120,6 +4148,7 @@ var converterSlice = function converterSlice(set, get) {
4120
4148
  }
4121
4149
  }
4122
4150
  }
4151
+ // Step 7: Finalize the Canvas
4123
4152
  canvas.add(loadedObject).renderAll();
4124
4153
  canvas.centerObject(loadedObject);
4125
4154
  canvas.setActiveObject(loadedObject);
@@ -4191,7 +4220,7 @@ var converterSlice = function converterSlice(set, get) {
4191
4220
  });
4192
4221
  }
4193
4222
  });
4194
- // return { href, availableFonts };
4223
+ // return { href, availableFonts };
4195
4224
  return href;
4196
4225
  };
4197
4226
  return {
@@ -4442,6 +4471,7 @@ var converterSlice = function converterSlice(set, get) {
4442
4471
  }
4443
4472
  },
4444
4473
  refreshColor: function refreshColor(colorValue) {
4474
+ console.log('colorValue---->', colorValue);
4445
4475
  processImage(use3dddPlus.getState().imageData, colorValue);
4446
4476
  },
4447
4477
  removeDuplicates: function removeDuplicates(arr) {
@@ -4470,10 +4500,10 @@ var converterSlice = function converterSlice(set, get) {
4470
4500
  }
4471
4501
  },
4472
4502
  changeSVGColor: function changeSVGColor(property, color) {
4503
+ console.log('-->', property, color);
4473
4504
  use3dddPlus.getState().popUpCanvasUpdateModification(true);
4474
4505
  var fillColor = _extends({}, use3dddPlus.getState().colorFill);
4475
4506
  if (use3dddPlus.getState().loadedObject) {
4476
- // let objImage1 = use3dddPlus.getState().popupCanv.getObjects();
4477
4507
  var objImage = use3dddPlus.getState().popupCanv.getObjects();
4478
4508
  if (objImage.length > 0) {
4479
4509
  objImage.forEach(function (ele) {
@@ -4484,30 +4514,13 @@ var converterSlice = function converterSlice(set, get) {
4484
4514
  });
4485
4515
  }
4486
4516
  if (ele.id && defaultColorObject && defaultColorObject.objects && defaultColorObject.objects.includes(ele.id) && typeof ele.fill === 'string' && ele.fill !== '') {
4487
- // const _C = (ele.fill === 'transparent' || (typeof ele.fill === 'string' && ele.fill.includes('#')) ? ele.fill : get().RGBToHex(ele.fill));
4488
- // if (_C === previousColor) {
4489
4517
  ele.set({
4490
4518
  fill: color
4491
4519
  });
4492
- // }
4493
4520
  }
4494
- // if(typeof ele.fill === "string" && ele.fill !== ""){
4495
- // const _C = (ele.fill === 'transparent' || (typeof ele.fill === 'string' && ele.fill.includes('#')) ? ele.fill : get().RGBToHex(ele.fill));
4496
- // if (_C === previousColor) {
4497
- // ele.set({
4498
- // fill: color,
4499
- // });
4500
- // }
4501
- // }
4502
4521
  });
4503
-
4504
4522
  use3dddPlus.getState().popupCanv.renderAll();
4505
4523
  fillColor[property] = color;
4506
- // Object.keys(fillColor).forEach((fc: any) => {
4507
- // if(fillColor[fc] === previousColor){
4508
- // fillColor[fc] = color;
4509
- // }
4510
- // });
4511
4524
  use3dddPlus.setState({
4512
4525
  colorFill: fillColor
4513
4526
  });
@@ -8081,31 +8094,276 @@ var LeftMenu = function LeftMenu() {
8081
8094
  })));
8082
8095
  };
8083
8096
 
8084
- var css_248z$3 = "#ls{background-color:#fff;background:radial-gradient(#eee,#ccc);height:100%;left:0;opacity:1;position:relative;transition:opacity 1s;width:100%;z-index:10000!important}#ls.fade-out{opacity:0}#l{animation:spin 2s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#b16b6b;display:block;height:100px;left:50%;margin:-50px 0 0 -50px;position:relative;top:50%;width:100px}#l:before{animation:spin 3s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#c10909;bottom:5px;left:5px;right:5px;top:5px}#l:after,#l:before{content:\"\";position:absolute}#l:after{animation:spin 1.5s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#bb4646;bottom:15px;left:15px;right:15px;top:15px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}";
8097
+ var css_248z$3 = "#ls{background-color:#fff;background:radial-gradient(#eee,#ccc);height:100%;left:0;opacity:1;position:relative;transition:opacity 1s;width:100%;z-index:10000!important}#ls.fade-out{opacity:0}#l{animation:spin 2s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#b16b6b;display:block;height:100px;left:50%;margin:-50px 0 0 -50px;position:relative;top:50%;width:100px}#l:before{animation:spin 3s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#c10909;bottom:5px;left:5px;right:5px;top:5px}#l:after,#l:before{content:\"\";position:absolute}#l:after{animation:spin 1.5s linear infinite;border:3px solid transparent;border-radius:50%;border-top-color:#bb4646;bottom:15px;left:15px;right:15px;top:15px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loader-progress{z-index:999999999999999}.loader-progress-overlay-logoeditor{align-items:center;background:hsla(40,16%,93%,.6);border-radius:8px;bottom:0;display:none;height:88%;justify-content:center;left:10%;pointer-events:none;position:fixed;right:50%;top:6%;transition:opacity .3s ease-in-out;width:80%;z-index:999999999999999}body .loader-progress-overlay-logoeditor svg.rs-logo-letters{height:25px}.loader-progress .loader-progress-overlay-logoeditor{display:flex;pointer-events:all}svg.rs-logo-letters{height:auto;width:100%}svg.rs-logo-letters g{opacity:1;transform:translateX(0)}@media (prefers-reduced-motion){svg.rs-logo-letters g{opacity:1;transform:translateX(0)}}svg.rs-logo-letters g.animate{animation:fadeInSlideIn .15s cubic-bezier(.12,.03,.35,.98) forwards}@keyframes fadeInSlideIn{0%{opacity:0;transform:translateX(-3%)}to{opacity:1;transform:translateX(0)}}";
8085
8098
  styleInject(css_248z$3);
8086
8099
 
8087
- var Loader = function Loader(_ref) {
8088
- var _ref$position = _ref.position,
8089
- position = _ref$position === void 0 ? 'overlay' : _ref$position,
8090
- _ref$height = _ref.height,
8091
- height = _ref$height === void 0 ? '100%' : _ref$height;
8092
- var loaderRef = React__default.useRef();
8100
+ var Loader = function Loader() {
8101
+ var rootRef = React__default.useRef(null);
8102
+ var intervalRef = React__default.useRef(null);
8103
+ var delay = 80;
8104
+ var animate = true;
8105
+ // Function to start looping animation
8106
+ var startAnimationLoop = function startAnimationLoop() {
8107
+ var _rootRef$current;
8108
+ document.body.classList.add('loader-progress');
8109
+ singleAnimationLoop();
8110
+ intervalRef.current = setInterval(function () {
8111
+ singleAnimationLoop();
8112
+ }, delay * (((_rootRef$current = rootRef.current) == null ? void 0 : _rootRef$current.querySelectorAll('svg.rs-logo-letters g').length) || 0) + 800);
8113
+ };
8114
+ // Function to handle a single animation loop
8115
+ var singleAnimationLoop = function singleAnimationLoop() {
8116
+ var _rootRef$current2;
8117
+ addAnimateClassToLetters();
8118
+ var logoSvgLetters = (_rootRef$current2 = rootRef.current) == null ? void 0 : _rootRef$current2.querySelectorAll('svg.rs-logo-letters g');
8119
+ logoSvgLetters == null ? void 0 : logoSvgLetters.forEach(function (letter) {
8120
+ letter.classList.remove('animate');
8121
+ });
8122
+ };
8123
+ // Function to animate class to letters
8124
+ var addAnimateClassToLetters = function addAnimateClassToLetters() {
8125
+ var _rootRef$current3;
8126
+ var logoSvgLetters = (_rootRef$current3 = rootRef.current) == null ? void 0 : _rootRef$current3.querySelectorAll('svg.rs-logo-letters g');
8127
+ logoSvgLetters == null ? void 0 : logoSvgLetters.forEach(function (letter, index) {
8128
+ setTimeout(function () {
8129
+ letter.classList.add('animate');
8130
+ }, index * delay);
8131
+ });
8132
+ };
8133
+ // Function to stop animation loop
8134
+ var stopAnimationLoop = function stopAnimationLoop() {
8135
+ var _rootRef$current4;
8136
+ document.body.classList.remove('loader-progress');
8137
+ var logoSvgLetters = (_rootRef$current4 = rootRef.current) == null ? void 0 : _rootRef$current4.querySelectorAll('svg.rs-logo-letters g');
8138
+ logoSvgLetters == null ? void 0 : logoSvgLetters.forEach(function (letter) {
8139
+ letter.classList.remove('animate');
8140
+ });
8141
+ if (intervalRef.current) {
8142
+ clearInterval(intervalRef.current);
8143
+ }
8144
+ };
8145
+ // Effect to handle animation start/stop based on `animate` prop
8093
8146
  React__default.useEffect(function () {
8094
- if (!loaderRef) return;
8095
- loaderRef.current.style.height = height;
8096
- }, [loaderRef]);
8097
- return React__default.createElement("section", {
8098
- ref: loaderRef,
8099
- id: "ls",
8100
- style: position === 'overlay' ? {
8101
- position: 'absolute',
8102
- opacity: 0.8,
8103
- top: 0
8104
- } : {},
8105
- className: "w-full h-full"
8106
- }, React__default.createElement("div", {
8107
- id: "l"
8108
- }));
8147
+ {
8148
+ startAnimationLoop();
8149
+ }
8150
+ // Cleanup on unmount
8151
+ return function () {
8152
+ stopAnimationLoop();
8153
+ };
8154
+ }, [animate]);
8155
+ return React__default.createElement("div", {
8156
+ ref: rootRef,
8157
+ className: "loader-progress-overlay-logoeditor"
8158
+ }, React__default.createElement("svg", {
8159
+ className: "rs-logo-letters",
8160
+ width: "1621",
8161
+ height: "244",
8162
+ viewBox: "0 0 1621 244",
8163
+ fill: "none",
8164
+ xmlns: "http://www.w3.org/2000/svg",
8165
+ "aria-hidden": "true"
8166
+ }, React__default.createElement("g", {
8167
+ className: "R",
8168
+ "clip-path": "url(#clip0_3639_29751)"
8169
+ }, React__default.createElement("path", {
8170
+ d: "M186.973 73.1564C182.326 109.658 159.826 130.946 132.395 137.888L149.114 178.265L173.881 239.236H116.582L93.2883 181.909L77.0791 143.672L65.4605 198.049L56.8458 239.236H0L46.7575 4.78086H51.2915C63.5902 4.83871 76.6823 4.72301 90.0011 4.78086H90.1145H118.736C161.356 5.0701 191.451 36.7126 186.803 73.2142M105.19 97.1052C117.376 97.1052 132.451 92.7666 134.775 72.4622C137.099 52.1578 118.509 49.4968 106.324 49.439C105.927 49.439 103.547 49.3233 103.547 49.3233C103.547 49.3233 100.146 49.3233 94.8186 49.3812L84.1635 97.1052C84.1635 97.1052 101.846 97.2787 103.377 97.1052H105.19Z",
8171
+ fill: "#CE0E2D"
8172
+ })), React__default.createElement("g", {
8173
+ className: "I",
8174
+ "clip-path": "url(#clip2_3639_29751)"
8175
+ }, React__default.createElement("path", {
8176
+ d: "M230.146 228.005C231.563 220.601 273.617 4.77246 273.617 4.77246C273.617 4.77246 238.931 4.77246 214.9 4.77246L175.794 205.387L169.276 239.228H227.936L230.146 228.063V228.005Z",
8177
+ fill: "#CE0E2D"
8178
+ })), React__default.createElement("g", {
8179
+ className: "C",
8180
+ "clip-path": "url(#clip4_3639_29751)"
8181
+ }, React__default.createElement("path", {
8182
+ d: "M424.94 10.4125C415.702 5.66903 403.29 0 380.79 0C353.245 0 328.988 8.38786 309.038 24.8165C277.64 49.9801 259.673 92.7293 259.617 141.957C259.617 203.912 294.246 243.942 348.088 244C368.888 244 391.388 237.405 395.185 234.629C395.582 232.431 406.804 175.393 406.804 175.393C406.804 175.393 400.229 179.558 390.878 182.566C381.413 186.153 370.248 187.772 358.233 187.772C322.073 187.772 316.689 155.783 316.689 136.751C316.689 109.852 325.134 85.9611 339.813 71.21C349.561 61.5495 362.597 56.1697 376.936 56.1697C391.785 56.1697 400.003 59.2935 406.804 62.5329C414.455 66.0616 425.11 74.8544 425.11 74.8544L437.012 19.0318C437.012 19.0318 434.235 15.156 424.997 10.4125",
8183
+ fill: "#CE0E2D"
8184
+ })), React__default.createElement("g", {
8185
+ className: "H",
8186
+ "clip-path": "url(#clip6_3639_29751)"
8187
+ }, React__default.createElement("path", {
8188
+ d: "M554.264 4.62769L548.596 32.8572L537.431 90.126H493.621L510.227 4.62769H451.511L406 239.372H464.66L481.719 150.808H525.473L508.357 239.372H571.777C571.777 239.372 567.583 236.017 568.716 229.48C569.85 222.943 612.64 4.62769 612.64 4.62769H554.264Z",
8189
+ fill: "#CE0E2D"
8190
+ })), React__default.createElement("g", {
8191
+ className: "A",
8192
+ "clip-path": "url(#clip8_3639_29751)"
8193
+ }, React__default.createElement("path", {
8194
+ d: "M662.652 152.221L689.233 87.7217L694.618 152.279H662.709L662.652 152.221ZM753.447 231.125C752.427 224.068 726.753 5 726.753 5H684.019L565 239.744H623.263L643.213 197.053H695.695L699.492 229.563L700.455 239.744H754.694L753.447 231.183V231.125Z",
8195
+ fill: "#CE0E2D"
8196
+ })), React__default.createElement("g", {
8197
+ className: "R",
8198
+ "clip-path": "url(#clip10_3639_29751)"
8199
+ }, React__default.createElement("path", {
8200
+ d: "M938.974 73.1564C934.326 109.658 911.826 130.946 884.395 137.888L901.114 178.265L925.881 239.236H868.582L845.288 181.909L829.079 143.672L817.461 198.049L808.846 239.236H752L798.758 4.78086H803.348C815.647 4.83871 828.739 4.72301 842.058 4.78086H842.171H870.792C913.413 5.0701 943.508 36.7126 938.86 73.2142M857.247 97.1052C869.376 97.1052 884.508 92.7666 886.775 72.4622C889.099 52.1578 870.509 49.4968 858.324 49.439C857.927 49.439 855.547 49.3233 855.547 49.3233C855.547 49.3233 852.146 49.3233 846.819 49.3812L836.22 97.1052C836.22 97.1052 853.903 97.2787 855.377 97.1052H857.19H857.247Z",
8201
+ fill: "#CE0E2D"
8202
+ })), React__default.createElement("g", {
8203
+ className: "D",
8204
+ "clip-path": "url(#clip12_3639_29751)"
8205
+ }, React__default.createElement("path", {
8206
+ d: "M1049.6 128.103C1047.5 137.763 1043.87 146.788 1039 155.002C1034.41 162.869 1028.23 169.522 1020.58 174.786C1013.61 179.703 1004.65 182.19 994.169 182.19H990.258L1013.04 65.2807C1013.04 65.2807 1013.38 65.2807 1013.61 65.2807C1017.41 65.1072 1021.15 64.9915 1024.55 64.9915C1035.26 64.9915 1042.68 67.5367 1046.48 72.5116C1050.73 78.1228 1053.05 87.4941 1053.05 100.336C1053.05 108.782 1051.92 118.211 1049.6 128.161M1106.9 55.2731C1102.7 43.6458 1096.7 33.9274 1088.87 26.2916C1081.22 18.8293 1071.98 13.2181 1061.33 9.63157C1051.18 6.21858 1039.85 4.48315 1027.66 4.48315C1023.92 4.48315 969.401 4.541 969.401 4.541H965.887L926.498 211.229L921 239.517H984.023C986.687 239.517 1020.81 238.938 1029.82 235.699C1043.08 230.955 1054.58 224.534 1064.28 216.667C1073.91 208.742 1082.02 199.486 1088.42 189.132C1094.71 179.066 1099.7 168.365 1103.21 157.316C1106.78 146.614 1109.33 135.739 1110.75 124.921C1112.17 114.393 1112.96 104.328 1112.96 95.0721C1112.96 79.9739 1110.98 66.6112 1106.9 55.331V55.2731Z",
8207
+ fill: "#CE0E2D"
8208
+ })), React__default.createElement("g", {
8209
+ className: "S",
8210
+ "clip-path": "url(#clip14_3639_29751)"
8211
+ }, React__default.createElement("path", {
8212
+ d: "M1198.3 96.6051C1184.36 87.176 1175.23 80.3501 1175.23 72.0779C1175.23 63.0537 1183.34 57.2111 1195.98 57.2111H1197.05C1208.95 57.2111 1220.01 61.6654 1225.73 65.4833L1233.55 70.6317L1250.5 16.1395L1245.34 12.9579C1232.65 5.03284 1217.4 1.15706 1198.92 1.15706C1152.56 1.09921 1120.14 33.5516 1120.09 80.1187C1120.09 114.306 1143.55 133.454 1161.01 144.792C1178.75 156.188 1181.98 161.973 1181.98 169.261C1181.98 182.161 1170.36 186.731 1160.38 186.731C1146.84 186.731 1132.61 182.046 1121.62 174.063L1113.91 168.509L1096 221.902L1100.02 225.431C1112.21 236.017 1133.29 242.496 1156.47 242.843H1156.59C1205.16 242.843 1237.86 210.102 1237.92 161.221C1237.92 134.206 1224.94 112.976 1198.41 96.6051",
8213
+ fill: "#CE0E2D"
8214
+ })), React__default.createElement("g", {
8215
+ className: "O",
8216
+ "clip-path": "url(#clip16_3639_29751)"
8217
+ }, React__default.createElement("path", {
8218
+ d: "M1364.97 129.318C1362.59 140.02 1359.13 149.564 1354.82 157.663C1350.63 165.415 1345.75 171.546 1340.2 175.943C1335.21 179.818 1329.88 181.727 1323.99 181.727C1314.01 181.727 1310.5 177.62 1308.63 174.554C1304.83 168.075 1302.96 158.82 1302.96 146.961C1302.96 134.987 1304.21 123.475 1306.82 112.773C1309.42 102.187 1312.94 92.9318 1317.36 85.2381C1321.44 77.8915 1326.43 72.1068 1331.98 67.9417C1336.97 64.1817 1342.3 62.3884 1348.19 62.3884C1354.76 62.3884 1359.41 64.4709 1362.98 68.8673C1366.72 73.6108 1368.71 82.6928 1368.71 95.0722C1368.71 107.451 1367.46 118.385 1365.02 129.318M1428.56 94.5515C1428.56 79.4534 1426.86 66.0906 1423.34 54.8104C1419.83 43.1253 1414.67 33.1755 1408.1 25.3661C1401.35 17.2675 1393.02 11.2514 1383.39 7.3756C1374.26 3.73122 1363.95 1.82227 1352.89 1.82227C1336.12 1.82227 1320.65 5.81373 1306.93 13.7388C1293.38 21.606 1281.77 32.3656 1272.3 45.8441C1262.95 59.0333 1255.7 74.7099 1250.59 92.3533C1245.61 109.765 1243.06 128.566 1243 148.118C1243.23 178.199 1250.03 201.569 1263.4 217.535C1277.01 233.906 1296.45 242.178 1321.27 242.178C1337.37 242.178 1352.27 238.129 1365.7 230.03C1378.85 222.047 1390.24 211.172 1399.6 197.462C1408.83 183.984 1416.14 168.249 1421.13 150.606C1426.06 133.078 1428.56 114.22 1428.61 94.4937L1428.56 94.5515Z",
8219
+ fill: "#CE0E2D"
8220
+ })), React__default.createElement("g", {
8221
+ className: "N",
8222
+ "clip-path": "url(#clip18_3639_29751)"
8223
+ }, React__default.createElement("path", {
8224
+ d: "M1563.55 4.59888L1557.88 35.5472L1543.43 108.435L1499.39 4.59888H1458.47C1458.47 4.59888 1458.47 4.71457 1458.42 4.88811H1457.62L1418.52 205.503L1412 239.343H1470.66L1472.87 228.179C1473.38 225.576 1481.99 181.38 1490.44 137.706L1533.51 239.401H1574.32L1620.4 4.65673H1563.55V4.59888Z",
8225
+ fill: "#CE0E2D"
8226
+ })), React__default.createElement("defs", null, React__default.createElement("clipPath", {
8227
+ id: "clip0_3639_29751"
8228
+ }, React__default.createElement("rect", {
8229
+ width: "187.277",
8230
+ height: "234.472",
8231
+ fill: "white",
8232
+ transform: "translate(0 4.76416)"
8233
+ })), React__default.createElement("clipPath", {
8234
+ id: "clip1_3639_29751"
8235
+ }, React__default.createElement("rect", {
8236
+ width: "187.277",
8237
+ height: "234.472",
8238
+ fill: "white",
8239
+ transform: "translate(0 4.76416)"
8240
+ })), React__default.createElement("clipPath", {
8241
+ id: "clip2_3639_29751"
8242
+ }, React__default.createElement("rect", {
8243
+ width: "104.34",
8244
+ height: "234.455",
8245
+ fill: "white",
8246
+ transform: "translate(169.276 4.77246)"
8247
+ })), React__default.createElement("clipPath", {
8248
+ id: "clip3_3639_29751"
8249
+ }, React__default.createElement("rect", {
8250
+ width: "104.34",
8251
+ height: "234.455",
8252
+ fill: "white",
8253
+ transform: "translate(169.276 4.77246)"
8254
+ })), React__default.createElement("clipPath", {
8255
+ id: "clip4_3639_29751"
8256
+ }, React__default.createElement("rect", {
8257
+ width: "177.395",
8258
+ height: "244",
8259
+ fill: "white",
8260
+ transform: "translate(259.617)"
8261
+ })), React__default.createElement("clipPath", {
8262
+ id: "clip5_3639_29751"
8263
+ }, React__default.createElement("rect", {
8264
+ width: "177.395",
8265
+ height: "244",
8266
+ fill: "white",
8267
+ transform: "translate(259.617)"
8268
+ })), React__default.createElement("clipPath", {
8269
+ id: "clip6_3639_29751"
8270
+ }, React__default.createElement("rect", {
8271
+ width: "206.64",
8272
+ height: "234.744",
8273
+ fill: "white",
8274
+ transform: "translate(406 4.62769)"
8275
+ })), React__default.createElement("clipPath", {
8276
+ id: "clip7_3639_29751"
8277
+ }, React__default.createElement("rect", {
8278
+ width: "206.64",
8279
+ height: "234.744",
8280
+ fill: "white",
8281
+ transform: "translate(406 4.62769)"
8282
+ })), React__default.createElement("clipPath", {
8283
+ id: "clip8_3639_29751"
8284
+ }, React__default.createElement("rect", {
8285
+ width: "189.694",
8286
+ height: "234.744",
8287
+ fill: "white",
8288
+ transform: "translate(565 5)"
8289
+ })), React__default.createElement("clipPath", {
8290
+ id: "clip9_3639_29751"
8291
+ }, React__default.createElement("rect", {
8292
+ width: "189.694",
8293
+ height: "234.744",
8294
+ fill: "white",
8295
+ transform: "translate(565 5)"
8296
+ })), React__default.createElement("clipPath", {
8297
+ id: "clip10_3639_29751"
8298
+ }, React__default.createElement("rect", {
8299
+ width: "187.333",
8300
+ height: "234.472",
8301
+ fill: "white",
8302
+ transform: "translate(752 4.76416)"
8303
+ })), React__default.createElement("clipPath", {
8304
+ id: "clip11_3639_29751"
8305
+ }, React__default.createElement("rect", {
8306
+ width: "187.333",
8307
+ height: "234.472",
8308
+ fill: "white",
8309
+ transform: "translate(752 4.76416)"
8310
+ })), React__default.createElement("clipPath", {
8311
+ id: "clip12_3639_29751"
8312
+ }, React__default.createElement("rect", {
8313
+ width: "191.961",
8314
+ height: "235.034",
8315
+ fill: "white",
8316
+ transform: "translate(921 4.48315)"
8317
+ })), React__default.createElement("clipPath", {
8318
+ id: "clip13_3639_29751"
8319
+ }, React__default.createElement("rect", {
8320
+ width: "191.961",
8321
+ height: "235.034",
8322
+ fill: "white",
8323
+ transform: "translate(921 4.48315)"
8324
+ })), React__default.createElement("clipPath", {
8325
+ id: "clip14_3639_29751"
8326
+ }, React__default.createElement("rect", {
8327
+ width: "154.498",
8328
+ height: "241.686",
8329
+ fill: "white",
8330
+ transform: "translate(1096 1.15698)"
8331
+ })), React__default.createElement("clipPath", {
8332
+ id: "clip15_3639_29751"
8333
+ }, React__default.createElement("rect", {
8334
+ width: "154.498",
8335
+ height: "241.686",
8336
+ fill: "white",
8337
+ transform: "translate(1096 1.15698)"
8338
+ })), React__default.createElement("clipPath", {
8339
+ id: "clip16_3639_29751"
8340
+ }, React__default.createElement("rect", {
8341
+ width: "185.613",
8342
+ height: "240.356",
8343
+ fill: "white",
8344
+ transform: "translate(1243 1.82227)"
8345
+ })), React__default.createElement("clipPath", {
8346
+ id: "clip17_3639_29751"
8347
+ }, React__default.createElement("rect", {
8348
+ width: "185.613",
8349
+ height: "240.356",
8350
+ fill: "white",
8351
+ transform: "translate(1243 1.82227)"
8352
+ })), React__default.createElement("clipPath", {
8353
+ id: "clip18_3639_29751"
8354
+ }, React__default.createElement("rect", {
8355
+ width: "208.397",
8356
+ height: "234.802",
8357
+ fill: "white",
8358
+ transform: "translate(1412 4.59888)"
8359
+ })), React__default.createElement("clipPath", {
8360
+ id: "clip19_3639_29751"
8361
+ }, React__default.createElement("rect", {
8362
+ width: "208.397",
8363
+ height: "234.802",
8364
+ fill: "white",
8365
+ transform: "translate(1412 4.59888)"
8366
+ })))));
8109
8367
  };
8110
8368
 
8111
8369
  var UpIcon = function UpIcon(_ref) {