builder-settings-types 0.0.259 → 0.0.262

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.
@@ -1,11 +1,11 @@
1
- const lt = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
2
- let nt = (p = 21) => {
1
+ const rt = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
2
+ let ot = (p = 21) => {
3
3
  let t = "", e = crypto.getRandomValues(new Uint8Array(p |= 0));
4
4
  for (; p--; )
5
- t += lt[e[p] & 63];
5
+ t += rt[e[p] & 63];
6
6
  return t;
7
7
  };
8
- function rt(p) {
8
+ function ct(p) {
9
9
  let t = 0, e = p.parentElement;
10
10
  for (; e; )
11
11
  e.classList.contains("setting-group") && e !== p && t++, e = e.parentElement;
@@ -21,15 +21,15 @@ function tt(p, t = 0) {
21
21
  Z(s, n), tt(s, n);
22
22
  });
23
23
  }
24
- const ct = {
24
+ const ht = {
25
25
  maxLevel: 5,
26
26
  spacingMultiplier: 1,
27
27
  visualIndentMultiplier: 2,
28
28
  enableAutoDetection: !0
29
29
  };
30
- class ht {
30
+ class dt {
31
31
  constructor(t = {}) {
32
- this.observedElements = /* @__PURE__ */ new Set(), this.config = { ...ct, ...t }, this.config.enableAutoDetection && this.setupAutoDetection();
32
+ this.observedElements = /* @__PURE__ */ new Set(), this.config = { ...ht, ...t }, this.config.enableAutoDetection && this.setupAutoDetection();
33
33
  }
34
34
  /**
35
35
  * Setup automatic detection using MutationObserver
@@ -63,7 +63,7 @@ class ht {
63
63
  * Update nesting for a specific element
64
64
  */
65
65
  updateElementNesting(t) {
66
- const e = rt(t);
66
+ const e = ct(t);
67
67
  this.applyNestingWithConfig(t, e);
68
68
  }
69
69
  /**
@@ -111,7 +111,7 @@ class ht {
111
111
  this.observer && (this.observer.disconnect(), this.observer = void 0), this.observedElements.clear();
112
112
  }
113
113
  }
114
- const it = new ht();
114
+ const it = new dt();
115
115
  function X(p) {
116
116
  if (p === null || typeof p != "object") return p;
117
117
  if (p instanceof Date) return new Date(p.getTime());
@@ -124,7 +124,7 @@ function X(p) {
124
124
  }
125
125
  return p;
126
126
  }
127
- function dt(p) {
127
+ function pt(p) {
128
128
  switch (p) {
129
129
  case "number":
130
130
  return 0;
@@ -144,7 +144,7 @@ function dt(p) {
144
144
  }
145
145
  class S {
146
146
  constructor(t = {}) {
147
- this.props = t, this.dataPropsPath = "", this.id = t.id || nt(), this.value = this.props.default, this.desktop = this.props.default, this.title = t.title || "", this.includeGetJson = t.includeGetJson !== void 0 ? t.includeGetJson : !0;
147
+ this.props = t, this.dataPropsPath = "", this.id = t.id || ot(), this.value = this.props.default, this.desktop = this.props.default, this.title = t.title || "", this.includeGetJson = t.includeGetJson !== void 0 ? t.includeGetJson : !0;
148
148
  }
149
149
  static SetUploadUrl(t) {
150
150
  globalThis.DefaultUploadUrl = t, S.DefaultUploadUrl = t;
@@ -192,7 +192,7 @@ class S {
192
192
  const i = document.createElement("div");
193
193
  i.className = t.wrapperClassName || "";
194
194
  const s = document.createElement("input");
195
- this.inputEl = s, s.value = String(t.value || dt(t.inputType)), s.type = t.inputType, s.placeholder = t.placeholder || "", s.className = t.inputClassName || "", this.dataPropsPath && s.setAttribute("data-test-id", this.dataPropsPath);
195
+ this.inputEl = s, s.value = String(t.value || pt(t.inputType)), s.type = t.inputType, s.placeholder = t.placeholder || "", s.className = t.inputClassName || "", this.dataPropsPath && s.setAttribute("data-test-id", this.dataPropsPath);
196
196
  const n = (a) => {
197
197
  const l = a.target;
198
198
  let r = l.value;
@@ -252,7 +252,7 @@ function q(p, t) {
252
252
  const Y = class Y {
253
253
  constructor(t) {
254
254
  this.elementRef = null, this.isHidden = !1, this.custom = !1, this.initialValues = {}, this.changeTimeout = null, this.isHandlingChange = !1, this.changeHandlers = /* @__PURE__ */ new Set(), this.blurTimeout = null, this.lastChangeTime = 0, this.handleBlur = () => {
255
- }, this.pendingBlurHandler = null, this.originalDefaultValues = {}, this.nestingLevel = 0, this.dataPropsPath = "", this.id = t.id || nt(), this.title = t.title, this.settings = t.settings, this.isCollapsed = t.collapsed ?? !1, this.isMain = t.main ?? !1, this.custom = t.custom ?? !1, this.nestingLevel = 0, this.includeGetJson = t.includeGetJson ?? !0, this.addItemCfg = t.addItem, this.deleteItemCfg = t.deleteItem, this.dataProps = t.dataProps, this.dataPropsPath = t.dataProps || "", Object.assign(this, t.settings), this.initialValues = this.getValues(), this.originalDefaultValues = this.getDefaultValues(), this.propagateNestingLevel(), this.propagateDataPropsPath();
255
+ }, this.pendingBlurHandler = null, this.originalDefaultValues = {}, this.nestingLevel = 0, this.dataPropsPath = "", this.id = t.id || ot(), this.title = t.title, this.settings = t.settings, this.isCollapsed = t.collapsed ?? !1, this.isMain = t.main ?? !1, this.custom = t.custom ?? !1, this.nestingLevel = 0, this.includeGetJson = t.includeGetJson ?? !0, this.addItemCfg = t.addItem, this.deleteItemCfg = t.deleteItem, this.dataProps = t.dataProps, this.dataPropsPath = t.dataProps || "", Object.assign(this, t.settings), this.initialValues = this.getValues(), this.originalDefaultValues = this.getDefaultValues(), this.propagateNestingLevel(), this.propagateDataPropsPath();
256
256
  }
257
257
  propagateNestingLevel() {
258
258
  const t = this.nestingLevel + 1;
@@ -344,7 +344,7 @@ const Y = class Y {
344
344
  addItem: this.addItemCfg,
345
345
  deleteItem: this.deleteItemCfg,
346
346
  dataProps: this.dataProps
347
- }, i = ut(e);
347
+ }, i = gt(e);
348
348
  return i.initialValues = this.getValues(), i;
349
349
  }
350
350
  resetDefault() {
@@ -809,10 +809,10 @@ const Y = class Y {
809
809
  };
810
810
  Y.hiddenElements = /* @__PURE__ */ new Set();
811
811
  let G = Y;
812
- function Ut(p) {
813
- return new pt(p);
812
+ function zt(p) {
813
+ return new ut(p);
814
814
  }
815
- class pt extends G {
815
+ class ut extends G {
816
816
  constructor(t) {
817
817
  super(t);
818
818
  const e = Object.keys(this.settings)[0];
@@ -863,13 +863,13 @@ class pt extends G {
863
863
  return this.updateTabUI(), t;
864
864
  }
865
865
  }
866
- function ut(p) {
866
+ function gt(p) {
867
867
  return new G(p);
868
868
  }
869
- function jt(p) {
869
+ function Ut(p) {
870
870
  return p;
871
871
  }
872
- class gt extends S {
872
+ class mt extends S {
873
873
  constructor(t = {}) {
874
874
  super(t), this.inputType = "text", t.onChange && this.setOnChange(t.onChange);
875
875
  }
@@ -889,18 +889,18 @@ class gt extends S {
889
889
  });
890
890
  }
891
891
  }
892
- const mt = "<svg xmlns='http://www.w3.org/2000/svg' width='18' height='19' viewBox='0 0 18 19' fill='none'><path d='M8.99999 15.8542C9.79613 16.5667 10.8475 17 12 17C14.4853 17 16.5 14.9853 16.5 12.5C16.5 10.4248 15.0953 8.67769 13.1849 8.15763M4.81513 8.15762C2.9047 8.67768 1.5 10.4248 1.5 12.5C1.5 14.9853 3.51472 17 6 17C8.48528 17 10.5 14.9853 10.5 12.5C10.5 11.9146 10.3882 11.3554 10.1849 10.8424M13.5 6.5C13.5 8.98528 11.4853 11 9 11C6.51472 11 4.5 8.98528 4.5 6.5C4.5 4.01472 6.51472 2 9 2C11.4853 2 13.5 4.01472 13.5 6.5Z' stroke='#667085' stroke-linecap='round' stroke-linejoin='round'/></svg>";
893
- class D extends gt {
892
+ const ft = "<svg xmlns='http://www.w3.org/2000/svg' width='18' height='19' viewBox='0 0 18 19' fill='none'><path d='M8.99999 15.8542C9.79613 16.5667 10.8475 17 12 17C14.4853 17 16.5 14.9853 16.5 12.5C16.5 10.4248 15.0953 8.67769 13.1849 8.15763M4.81513 8.15762C2.9047 8.67768 1.5 10.4248 1.5 12.5C1.5 14.9853 3.51472 17 6 17C8.48528 17 10.5 14.9853 10.5 12.5C10.5 11.9146 10.3882 11.3554 10.1849 10.8424M13.5 6.5C13.5 8.98528 11.4853 11 9 11C6.51472 11 4.5 8.98528 4.5 6.5C4.5 4.01472 6.51472 2 9 2C11.4853 2 13.5 4.01472 13.5 6.5Z' stroke='#667085' stroke-linecap='round' stroke-linejoin='round'/></svg>";
893
+ class F extends mt {
894
894
  constructor(t) {
895
895
  super({
896
896
  ...t,
897
- icon: t.icon || mt,
897
+ icon: t.icon || ft,
898
898
  title: t.title || "Color",
899
- default: t.default ? D.normalizeColorValue(t.default) : "#000000"
899
+ default: t.default ? F.normalizeColorValue(t.default) : "#000000"
900
900
  }), this.inputType = "color", this.element = null, this.colorInputEl = null, this.textInputEl = null, this.detectChange = t.detectChange;
901
901
  }
902
902
  static normalizeColorValue(t) {
903
- return t.startsWith("#") ? D.normalizeHexValue(t) : t.includes(",") ? D.rgbToHexStatic(t) : D.normalizeHexValue(t);
903
+ return t.startsWith("#") ? F.normalizeHexValue(t) : t.includes(",") ? F.rgbToHexStatic(t) : F.normalizeHexValue(t);
904
904
  }
905
905
  static normalizeHexValue(t) {
906
906
  return t = t.replace("#", ""), t.length === 3 && (t = t.split("").map((e) => e + e).join("")), t.length !== 6 ? (console.warn(`Invalid hex value "${t}", using default "#000000"`), "#000000") : /^[0-9A-Fa-f]{6}$/.test(t) ? `#${t.toLowerCase()}` : (console.warn(`Invalid hex value "${t}", using default "#000000"`), "#000000");
@@ -921,7 +921,7 @@ class D extends gt {
921
921
  return;
922
922
  }
923
923
  if (typeof t == "string") {
924
- const e = D.normalizeColorValue(t);
924
+ const e = F.normalizeColorValue(t);
925
925
  this.value = e, this.colorInputEl && (this.colorInputEl.value = e), this.textInputEl && (this.textInputEl.value = e), this.onChange && this.onChange(e), this.props.detectChange && this.props.detectChange(e);
926
926
  } else
927
927
  this.value = "#000000", this.colorInputEl && (this.colorInputEl.value = "#000000"), this.textInputEl && (this.textInputEl.value = "#000000"), this.onChange && this.onChange("#000000"), this.props.detectChange && this.props.detectChange("#000000");
@@ -964,16 +964,16 @@ class D extends gt {
964
964
  var c, h;
965
965
  let r = l.target.value.trim();
966
966
  if (this.textInputEl && i(this.textInputEl)) {
967
- const d = D.normalizeColorValue(r);
967
+ const d = F.normalizeColorValue(r);
968
968
  this.value = d, (c = this.onChange) == null || c.call(this, d), (h = this.detectChange) == null || h.call(this, d), this.colorInputEl && (this.colorInputEl.value = d), n.style.backgroundColor = d;
969
969
  }
970
970
  }), this.colorInputEl.addEventListener("input", (l) => {
971
971
  var h, d;
972
- const r = l.target.value, c = D.normalizeColorValue(r);
972
+ const r = l.target.value, c = F.normalizeColorValue(r);
973
973
  this.value = c, (h = this.onChange) == null || h.call(this, c), (d = this.detectChange) == null || d.call(this, c), this.textInputEl && (this.textInputEl.value = c), n.style.backgroundColor = c, e.classList.remove("error");
974
974
  }), this.colorInputEl.addEventListener("change", (l) => {
975
975
  var h, d;
976
- const r = l.target.value, c = D.normalizeColorValue(r);
976
+ const r = l.target.value, c = F.normalizeColorValue(r);
977
977
  this.value = c, (h = this.onChange) == null || h.call(this, c), (d = this.detectChange) == null || d.call(this, c), this.textInputEl && (this.textInputEl.value = c), n.style.backgroundColor = c;
978
978
  }), e.appendChild(s), e.appendChild(n), e.appendChild(a), t.appendChild(e), this.element = t, t;
979
979
  }
@@ -982,7 +982,7 @@ class D extends gt {
982
982
  }
983
983
  // Helper method to get normalized hex value
984
984
  getNormalizedValue() {
985
- return this.value ? D.normalizeColorValue(this.value) : "#000000";
985
+ return this.value ? F.normalizeColorValue(this.value) : "#000000";
986
986
  }
987
987
  // Helper method to check if current value is valid hex
988
988
  isValidHex() {
@@ -993,7 +993,7 @@ class D extends gt {
993
993
  return this.isValidHex() ? this.hexToRgb(this.value) : "0, 0, 0";
994
994
  }
995
995
  }
996
- const ft = `
996
+ const vt = `
997
997
  <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
998
998
  <path d="M8.99999 15.8542C9.79613 16.5667 10.8475 17 12 17C14.4853 17 16.5 14.9853 16.5 12.5C16.5 10.4248 15.0953 8.67769 13.1849 8.15763M4.81513 8.15762C2.9047 8.67768 1.5 10.4248 1.5 12.5C1.5 14.9853 3.51472 17 6 17C8.48528 17 10.5 14.9853 10.5 12.5C10.5 11.9146 10.3882 11.3554 10.1849 10.8424M13.5 6.5C13.5 8.98528 11.4853 11 9 11C6.51472 11 4.5 8.98528 4.5 6.5C4.5 4.01472 6.51472 2 9 2C11.4853 2 13.5 4.01472 13.5 6.5Z" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
999
999
  <path d="M9 17C13.4183 17 17 13.4183 17 9C17 4.58172 13.4183 1 9 1C4.58172 1 1 4.58172 1 9C1 13.4183 4.58172 17 9 17Z" stroke="#667085" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round" opacity="0.5"/>
@@ -1003,7 +1003,7 @@ class W extends S {
1003
1003
  constructor(t = {}) {
1004
1004
  super({
1005
1005
  ...t,
1006
- icon: t.icon || ft,
1006
+ icon: t.icon || vt,
1007
1007
  title: t.title || "Color & Opacity",
1008
1008
  default: t.default || "#000000FF"
1009
1009
  }), this.inputType = "color", this.element = null, this.colorInputEl = null, this.textInputEl = null, this.opacityInputEl = null, this.colorPreviewEl = null, this.detectChange = t.detectChange, this.value && (this.value = W.normalizeHexWithOpacity(this.value));
@@ -1121,7 +1121,7 @@ class W extends S {
1121
1121
  };
1122
1122
  }
1123
1123
  }
1124
- class _t extends S {
1124
+ class jt extends S {
1125
1125
  constructor(t = {}) {
1126
1126
  super(t), this.inputType = "text", t.onChange && this.setOnChange(t.onChange);
1127
1127
  }
@@ -1153,7 +1153,7 @@ class _t extends S {
1153
1153
  return e.addEventListener("input", i), e.addEventListener("change", i), e.addEventListener("blur", s), t.appendChild(e), t;
1154
1154
  }
1155
1155
  }
1156
- class F extends S {
1156
+ class D extends S {
1157
1157
  constructor(t) {
1158
1158
  super(t), this.inputType = "number", this.inputElement = null, this.mobileValue = t.mobile, this.validateProps(), this.value = this.validateValue(this.value);
1159
1159
  }
@@ -1212,12 +1212,12 @@ class F extends S {
1212
1212
  );
1213
1213
  }
1214
1214
  }
1215
- const vt = `
1215
+ const Ct = `
1216
1216
  <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1217
1217
  <path d="M9 17C13.4183 17 17 13.4183 17 9C17 4.58172 13.4183 1 9 1C4.58172 1 1 4.58172 1 9C1 13.4183 4.58172 17 9 17Z" stroke="#667085" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
1218
1218
  <path d="M9 1V17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1Z" fill="#667085" stroke="#667085" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
1219
1219
  </svg>`;
1220
- class Ct extends F {
1220
+ class yt extends D {
1221
1221
  constructor(t = {}) {
1222
1222
  const e = {
1223
1223
  title: "Opacity",
@@ -1226,7 +1226,7 @@ class Ct extends F {
1226
1226
  maxValue: 100,
1227
1227
  step: 1,
1228
1228
  default: t.default ?? 100,
1229
- icon: vt,
1229
+ icon: Ct,
1230
1230
  ...t
1231
1231
  };
1232
1232
  super(e), this.inputType = "number", this.mobileValue = t.mobile;
@@ -1356,7 +1356,7 @@ class et extends S {
1356
1356
  this.clickOutsideListener && (document.removeEventListener("click", this.clickOutsideListener), this.clickOutsideListener = null), this.resizeListener && (window.removeEventListener("resize", this.resizeListener), this.resizeListener = null), this.cleanupDropdownPosition(), this.optionsListEl && this.optionsListEl.parentNode && this.optionsListEl.parentNode.removeChild(this.optionsListEl), super.destroy();
1357
1357
  }
1358
1358
  }
1359
- class yt extends S {
1359
+ class bt extends S {
1360
1360
  constructor(t = {}) {
1361
1361
  super(t), this.inputType = "button", this.value || (this.value = "center");
1362
1362
  }
@@ -1412,7 +1412,7 @@ class yt extends S {
1412
1412
  }), t.appendChild(i), t;
1413
1413
  }
1414
1414
  }
1415
- class qt extends S {
1415
+ class _t extends S {
1416
1416
  constructor(t) {
1417
1417
  super(t), this.inputType = "button", this.bgWithAlpha = "rgba(145, 158, 171, 0.08)";
1418
1418
  }
@@ -1441,27 +1441,27 @@ class qt extends S {
1441
1441
  return o.className = "button-setting-wrapper " + (this.props.wrapperClassName || ""), o.appendChild(t), o;
1442
1442
  }
1443
1443
  }
1444
- class Jt extends S {
1444
+ class qt extends S {
1445
1445
  constructor(t = {}) {
1446
1446
  super(t), this.inputType = { width: "number", height: "number" }, this.aspectRatio = 1, this.isUpdating = !1;
1447
1447
  const e = t.width || 0, i = t.height || 0;
1448
1448
  this.value || (this.value = {
1449
1449
  width: e,
1450
1450
  height: i
1451
- }), this.minWidth = t.minWidth ?? 0, this.maxWidth = t.maxWidth, this.minHeight = t.minHeight ?? 0, this.maxHeight = t.maxHeight, this.locked = t.locked ?? !1, this.value.height > 0 && (this.aspectRatio = this.value.width / this.value.height), this.widthSetting = new F({
1451
+ }), this.minWidth = t.minWidth ?? 0, this.maxWidth = t.maxWidth, this.minHeight = t.minHeight ?? 0, this.maxHeight = t.maxHeight, this.locked = t.locked ?? !1, this.value.height > 0 && (this.aspectRatio = this.value.width / this.value.height), this.widthSetting = new D({
1452
1452
  title: "Width",
1453
1453
  default: this.value.width,
1454
1454
  suffix: "px",
1455
1455
  minValue: this.minWidth,
1456
1456
  maxValue: this.maxWidth,
1457
- icon: bt
1458
- }), this.heightSetting = new F({
1457
+ icon: wt
1458
+ }), this.heightSetting = new D({
1459
1459
  title: "Height",
1460
1460
  default: this.value.height,
1461
1461
  suffix: "px",
1462
1462
  minValue: this.minHeight,
1463
1463
  maxValue: this.maxHeight,
1464
- icon: wt
1464
+ icon: xt
1465
1465
  }), this.widthSetting.setOnChange(this.handleWidthChange.bind(this)), this.heightSetting.setOnChange(this.handleHeightChange.bind(this));
1466
1466
  }
1467
1467
  handleWidthChange(t) {
@@ -1555,24 +1555,24 @@ class Jt extends S {
1555
1555
  }
1556
1556
  }
1557
1557
  }
1558
- const bt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1558
+ const wt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1559
1559
  <path d="M4.5 9.5H13.5M4.5 9.5L6 7.25M4.5 9.5L6 11.75M13.5 9.5L12 7.25M13.5 9.5L12 11.75M15.75 16.25V2.75M2.25 16.25V2.75" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
1560
- </svg>`, wt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1560
+ </svg>`, xt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1561
1561
  <path d="M9 14L9 5M9 14L6.75 12.5M9 14L11.25 12.5M9 5L6.75 6.5M9 5L11.25 6.5M15.75 2.75H2.25M15.75 16.25H2.25" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"/>
1562
1562
  </svg>`, Q = `
1563
1563
  <svg xmlns="http://www.w3.org/2000/svg" width="15" height="16" viewBox="0 0 15 16" fill="none">
1564
1564
  <path d="M5 10.5L7.5 8M7.5 8L10 10.5M7.5 8V13.625M12.5 10.9643C13.2634 10.3338 13.75 9.37996 13.75 8.3125C13.75 6.41402 12.211 4.875 10.3125 4.875C10.1759 4.875 10.0482 4.80375 9.97882 4.68609C9.16379 3.30302 7.65902 2.375 5.9375 2.375C3.34867 2.375 1.25 4.47367 1.25 7.0625C1.25 8.35381 1.77215 9.52317 2.61684 10.371" stroke="#475467" stroke-linecap="round" stroke-linejoin="round"/>
1565
1565
  </svg>
1566
- `, xt = `
1566
+ `, Lt = `
1567
1567
  <svg width="91" height="71" viewBox="0 0 91 71" fill="none" xmlns="http://www.w3.org/2000/svg">
1568
1568
  <rect width="91" height="71" rx="4" fill="#F2F4F7"/>
1569
1569
  <path d="M37 31.5L39.5 29M39.5 29L42 31.5M39.5 29V34.625M44.5 31.9643C45.2634 31.3338 45.75 30.38 45.75 29.3125C45.75 27.414 44.211 25.875 42.3125 25.875C42.1759 25.875 42.0482 25.8037 41.9788 25.6861C41.1638 24.303 39.659 23.375 37.9375 23.375C35.3487 23.375 33.25 25.4737 33.25 28.0625C33.25 29.3538 33.7721 30.5232 34.6168 31.371" stroke="#475467" stroke-linecap="round" stroke-linejoin="round"/>
1570
1570
  </svg>
1571
- `, Lt = `
1571
+ `, kt = `
1572
1572
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 12 12" fill="none">
1573
1573
  <path d="M8 3V2.6C8 2.03995 8 1.75992 7.89101 1.54601C7.79513 1.35785 7.64215 1.20487 7.45399 1.10899C7.24008 1 6.96005 1 6.4 1H5.6C5.03995 1 4.75992 1 4.54601 1.10899C4.35785 1.20487 4.20487 1.35785 4.10899 1.54601C4 1.75992 4 2.03995 4 2.6V3M5 5.75V8.25M7 5.75V8.25M1.5 3H10.5M9.5 3V8.6C9.5 9.44008 9.5 9.86012 9.33651 10.181C9.1927 10.4632 8.96323 10.6927 8.68099 10.8365C8.36012 11 7.94008 11 7.1 11H4.9C4.05992 11 3.63988 11 3.31901 10.8365C3.03677 10.6927 2.8073 10.4632 2.66349 10.181C2.5 9.86012 2.5 9.44008 2.5 8.6V3" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
1574
1574
  </svg>
1575
- `, kt = `
1575
+ `, Mt = `
1576
1576
  <svg xmlns="http://www.w3.org/2000/svg" width="29" height="29" viewBox="0 0 29 29" fill="none">
1577
1577
  <!-- Top dot -->
1578
1578
  <circle cx="14.5" cy="3" r="1.5" fill="#02CC59" opacity="1"/>
@@ -1592,7 +1592,7 @@ const bt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewB
1592
1592
  <circle cx="6.7" cy="6.7" r="1.5" fill="#02CC59" opacity="0.3"/>
1593
1593
  </svg>
1594
1594
  `;
1595
- class ot extends S {
1595
+ class at extends S {
1596
1596
  constructor(t = {}) {
1597
1597
  super(t), this.inputType = "button", this.previewWrapper = null, this.previewEl = null, this.emptyStateEl = null, this.errorContainer = null, this.messageListener = null, this.loadingSpinner = null, this.props.delete === void 0 && (this.props.delete = !0), this.props.maxFileSizeMB === void 0 && (this.props.maxFileSizeMB = 5), !this.value && t.defaultUrl && t.defaultUrl !== "" && (this.value = t.defaultUrl), this.setupMessageListener();
1598
1598
  }
@@ -1689,9 +1689,9 @@ class ot extends S {
1689
1689
  const s = this.value && this.value !== "";
1690
1690
  s || i.classList.add("no-image");
1691
1691
  const n = document.createElement("div");
1692
- if (n.className = "preview-placeholder", n.innerHTML = xt, this.previewWrapper = document.createElement("div"), this.previewWrapper.className = "preview-wrapper", this.loadingSpinner = document.createElement("div"), this.loadingSpinner.className = "loading-spinner", this.loadingSpinner.innerHTML = kt, this.loadingSpinner.style.display = "none", this.previewWrapper.appendChild(this.loadingSpinner), this.previewEl = document.createElement("img"), this.previewEl.className = "upload-preview", this.props.delete) {
1692
+ if (n.className = "preview-placeholder", n.innerHTML = Lt, this.previewWrapper = document.createElement("div"), this.previewWrapper.className = "preview-wrapper", this.loadingSpinner = document.createElement("div"), this.loadingSpinner.className = "loading-spinner", this.loadingSpinner.innerHTML = Mt, this.loadingSpinner.style.display = "none", this.previewWrapper.appendChild(this.loadingSpinner), this.previewEl = document.createElement("img"), this.previewEl.className = "upload-preview", this.props.delete) {
1693
1693
  const a = document.createElement("button");
1694
- a.className = "delete-button", a.type = "button", a.title = "Delete image", a.innerHTML = Lt, this.previewWrapper.appendChild(a), a.onclick = (l) => {
1694
+ a.className = "delete-button", a.type = "button", a.title = "Delete image", a.innerHTML = kt, this.previewWrapper.appendChild(a), a.onclick = (l) => {
1695
1695
  var r;
1696
1696
  l.stopPropagation(), this.value = "", this.updatePreviewState(null), (r = this.onChange) == null || r.call(this, ""), this.hideError();
1697
1697
  };
@@ -1712,14 +1712,14 @@ class ot extends S {
1712
1712
  }, t;
1713
1713
  }
1714
1714
  }
1715
- class Zt extends F {
1715
+ class Jt extends D {
1716
1716
  constructor(t = {}) {
1717
1717
  super({
1718
1718
  ...t,
1719
1719
  title: t.title || "Height",
1720
1720
  suffix: t.suffix || "px",
1721
1721
  minValue: t.minValue ?? 0,
1722
- icon: t.icon || Mt,
1722
+ icon: t.icon || St,
1723
1723
  default: t.default ?? 100
1724
1724
  }), this.inputType = "number", this.mobileValue = t.mobile;
1725
1725
  }
@@ -1730,17 +1730,17 @@ class Zt extends F {
1730
1730
  this.mobileValue = t, t !== void 0 && this.setValue(t);
1731
1731
  }
1732
1732
  }
1733
- const Mt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1733
+ const St = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1734
1734
  <path d="M9 14L9 5M9 14L6.75 12.5M9 14L11.25 12.5M9 5L6.75 6.5M9 5L11.25 6.5M15.75 2.75H2.25M15.75 16.25H2.25" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
1735
1735
  </svg>`;
1736
- class Xt extends F {
1736
+ class Zt extends D {
1737
1737
  constructor(t = {}) {
1738
1738
  super({
1739
1739
  ...t,
1740
1740
  title: t.title || "Width",
1741
1741
  suffix: t.suffix || "px",
1742
1742
  minValue: t.minValue ?? 0,
1743
- icon: t.icon || St,
1743
+ icon: t.icon || It,
1744
1744
  default: t.default ?? 100
1745
1745
  }), this.inputType = "number", this.mobileValue = t.mobile;
1746
1746
  }
@@ -1751,14 +1751,14 @@ class Xt extends F {
1751
1751
  this.mobileValue = t, t !== void 0 && this.setValue(t);
1752
1752
  }
1753
1753
  }
1754
- const St = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1754
+ const It = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
1755
1755
  <path d="M4.5 9.5H13.5M4.5 9.5L6 7.25M4.5 9.5L6 11.75M13.5 9.5L12 7.25M13.5 9.5L12 11.75M15.75 16.25V2.75M2.25 16.25V2.75" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
1756
- </svg>`, It = `
1756
+ </svg>`, Nt = `
1757
1757
  <svg xmlns="http://www.w3.org/2000/svg" class="svg-select-api" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="feather feather-chevron-down">
1758
1758
  <polyline points="6 9 12 15 18 9"></polyline>
1759
1759
  </svg>
1760
1760
  `;
1761
- class Yt extends S {
1761
+ class Xt extends S {
1762
1762
  constructor(t = {}) {
1763
1763
  if (super(t), this.inputType = "select", this._options = [], this.isOpen = !1, this.selectedOptionIndex = null, this.optionsListEl = null, this.svgContainer = null, this.buttonEl = null, this.isLoading = !1, this.container = null, this.hasInitializedOptions = !1, this.selectedOptionIndex = null, t.default !== void 0 && (this.value = t.default), this.initializeOptions(t), !t.getOptionsAsync && this.value !== void 0) {
1764
1764
  const e = this._options.findIndex(
@@ -1813,7 +1813,7 @@ class Yt extends S {
1813
1813
  a.onclick = (l) => this.selectApiOption(l, o, e), i.appendChild(a);
1814
1814
  }), t.appendChild(i);
1815
1815
  const s = document.createElement("div");
1816
- return s.classList.add("svg-container"), s.innerHTML = It, t.appendChild(s), s.onclick = () => {
1816
+ return s.classList.add("svg-container"), s.innerHTML = Nt, t.appendChild(s), s.onclick = () => {
1817
1817
  var n, o;
1818
1818
  this.isLoading || (this.isOpen = !this.isOpen, (n = this.optionsListEl) == null || n.classList.toggle("open", this.isOpen), (o = this.svgContainer) == null || o.classList.toggle("open", this.isOpen));
1819
1819
  }, this.optionsListEl = i, this.svgContainer = s, this.props.getOptionsAsync && !this.hasInitializedOptions ? (this.isLoading = !0, this.updateButtonText(), this.props.getOptionsAsync().then((n) => {
@@ -1905,7 +1905,7 @@ class Yt extends S {
1905
1905
  ), this.updateButtonText();
1906
1906
  }
1907
1907
  }
1908
- class Kt extends S {
1908
+ class Yt extends S {
1909
1909
  constructor(t) {
1910
1910
  var e, i;
1911
1911
  super(t), this.inputType = "text", this.value = t.default ?? ((i = (e = t.options) == null ? void 0 : e[0]) == null ? void 0 : i.value) ?? "", this.detectChangeCallback = t.detectChange;
@@ -1955,13 +1955,13 @@ class Kt extends S {
1955
1955
  this.detectChangeCallback = t;
1956
1956
  }
1957
1957
  }
1958
- const Nt = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
1958
+ const Vt = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
1959
1959
  <path d="M13.3334 5.99996H2.66675M13.3334 9.99996H2.66675M5.33341 12.6666V3.33329M10.6667 12.6666V3.33329" stroke="#667085" stroke-width="1.33333" stroke-linecap="round" stroke-linejoin="round"/>
1960
1960
  </svg>`;
1961
- class Qt extends S {
1961
+ class Kt extends S {
1962
1962
  // Store mobile value
1963
1963
  constructor(t = {}) {
1964
- t.rowGap = t.rowGap ?? !0, t.columnGap = t.columnGap ?? !0, t.title = t.title ?? "Gap", t.icon = t.icon ?? Nt, t.suffix = t.suffix ?? "px", t.minValue = t.minValue ?? 0, super(t), this.inputType = "number", this.inputValues = {}, this.mobileValue = t.mobile, this.value = this.validateValue(t.default ?? 0), t.rowGap && (this.inputValues.row = this.value), t.columnGap && (this.inputValues.column = this.value);
1964
+ t.rowGap = t.rowGap ?? !0, t.columnGap = t.columnGap ?? !0, t.title = t.title ?? "Gap", t.icon = t.icon ?? Vt, t.suffix = t.suffix ?? "px", t.minValue = t.minValue ?? 0, super(t), this.inputType = "number", this.inputValues = {}, this.mobileValue = t.mobile, this.value = this.validateValue(t.default ?? 0), t.rowGap && (this.inputValues.row = this.value), t.columnGap && (this.inputValues.column = this.value);
1965
1965
  }
1966
1966
  draw() {
1967
1967
  const t = document.createElement("div");
@@ -2012,40 +2012,40 @@ class Qt extends S {
2012
2012
  this.mobileValue = t, t !== void 0 && this.setValue(t);
2013
2013
  }
2014
2014
  }
2015
- const Vt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
2015
+ const Ht = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
2016
2016
  <path d="M2.25 11.75H15.75M5.85 2.75H12.15C13.4101 2.75 14.0402 2.75 14.5215 2.99524C14.9448 3.21095 15.289 3.55516 15.5048 3.97852C15.75 4.45982 15.75 5.08988 15.75 6.35V12.65C15.75 13.9101 15.75 14.5402 15.5048 15.0215C15.289 15.4448 14.9448 15.789 14.5215 16.0048C14.0402 16.25 13.4101 16.25 12.15 16.25H5.85C4.58988 16.25 3.95982 16.25 3.47852 16.0048C3.05516 15.789 2.71095 15.4448 2.49524 15.0215C2.25 14.5402 2.25 13.9101 2.25 12.65V6.35C2.25 5.08988 2.25 4.45982 2.49524 3.97852C2.71095 3.55516 3.05516 3.21095 3.47852 2.99524C3.95982 2.75 4.58988 2.75 5.85 2.75Z" stroke="#667085" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
2017
2017
  </svg>`;
2018
- class te extends F {
2018
+ class Qt extends D {
2019
2019
  constructor(t = {}) {
2020
2020
  super({
2021
2021
  ...t,
2022
2022
  minValue: t.minValue ?? 0,
2023
2023
  maxValue: t.maxValue ?? 1e3,
2024
- icon: t.icon || Vt,
2024
+ icon: t.icon || Ht,
2025
2025
  title: t.title || "Margin Bottom",
2026
2026
  default: t.default ?? 20,
2027
2027
  wrapperClassName: "margin-bottom-wrapper " + (t.wrapperClassName || "")
2028
2028
  }), this.inputType = "number";
2029
2029
  }
2030
2030
  }
2031
- const Ht = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
2031
+ const Tt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
2032
2032
  <path d="M15.75 7.25H2.25m9.9 9h-6.3c-1.26 0-1.89 0-2.371-.245a2.25 2.25 0 0 1-.984-.983c-.245-.482-.245-1.112-.245-2.372v-6.3c0-1.26 0-1.89.245-2.371a2.25 2.25 0 0 1 .984-.984c.48-.245 1.11-.245 2.371-.245h6.3c1.26 0 1.89 0 2.371.245.424.216.768.56.984.984.245.48.245 1.11.245 2.371v6.3c0 1.26 0 1.89-.245 2.371-.216.424-.56.768-.984.984-.48.245-1.11.245-2.371.245"
2033
2033
  stroke="#667085" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
2034
2034
  </svg>`;
2035
- class ee extends F {
2035
+ class te extends D {
2036
2036
  constructor(t = {}) {
2037
2037
  super({
2038
2038
  ...t,
2039
2039
  minValue: t.minValue ?? 0,
2040
2040
  maxValue: t.maxValue ?? 1e3,
2041
- icon: t.icon || Ht,
2041
+ icon: t.icon || Tt,
2042
2042
  title: t.title || "Margin Top",
2043
2043
  default: t.default ?? 20,
2044
2044
  wrapperClassName: "margin-top-wrapper " + (t.wrapperClassName || "")
2045
2045
  }), this.inputType = "number";
2046
2046
  }
2047
2047
  }
2048
- class ie extends S {
2048
+ class ee extends S {
2049
2049
  constructor(t) {
2050
2050
  super(t), this.inputType = {}, this.container = null, this.defaultLanguage = "", this.uploadSettings = /* @__PURE__ */ new Map(), t.default ? this.value = { ...t.default } : this.value || (this.value = {}), this.defaultLanguage = t.languages.includes(S.DefaultLanguage) ? S.DefaultLanguage : t.languages[0];
2051
2051
  const e = t.defaultValue || `Enter text in ${this.capitalizeFirstLetter(this.defaultLanguage)}`;
@@ -2096,7 +2096,7 @@ class ie extends S {
2096
2096
  i.classList.add("simple-multi-language-row");
2097
2097
  const s = document.createElement("label");
2098
2098
  if (s.classList.add("simple-language-label"), s.textContent = t.toUpperCase(), s.setAttribute("for", `textarea-${t}`), i.appendChild(s), this.props.multiImg) {
2099
- const n = new ot({
2099
+ const n = new at({
2100
2100
  defaultUrl: e || "",
2101
2101
  title: "",
2102
2102
  id: `${this.id}_upload_${t}`
@@ -2192,7 +2192,7 @@ class ie extends S {
2192
2192
  });
2193
2193
  }
2194
2194
  }
2195
- class se extends S {
2195
+ class ie extends S {
2196
2196
  constructor(t = {}) {
2197
2197
  super(t), this.inputType = "select";
2198
2198
  const e = [
@@ -2219,7 +2219,7 @@ class se extends S {
2219
2219
  this.selectSetting.destroy(), super.destroy();
2220
2220
  }
2221
2221
  }
2222
- const at = `<svg
2222
+ const lt = `<svg
2223
2223
  width="13"
2224
2224
  height="13"
2225
2225
  viewBox="0 0 13 13"
@@ -2233,7 +2233,7 @@ const at = `<svg
2233
2233
  fill="#919EAB"
2234
2234
  />
2235
2235
  </svg>`;
2236
- function Tt(p) {
2236
+ function nt(p) {
2237
2237
  try {
2238
2238
  const t = p.match(/linear-gradient\(([^)]+)\)/);
2239
2239
  if (t) {
@@ -2255,8 +2255,8 @@ function Tt(p) {
2255
2255
  let h = "", d = 0, m = 100;
2256
2256
  const u = c.match(/rgba?\(([^)]+)\)(?:\s*(\d+)%)?/);
2257
2257
  if (u) {
2258
- const g = u[1].split(",").map((V) => V.trim()), f = parseInt(g[0]), E = parseInt(g[1]), v = parseInt(g[2]), w = g[3] ? parseFloat(g[3]) : 1;
2259
- h = `#${f.toString(16).padStart(2, "0")}${E.toString(16).padStart(2, "0")}${v.toString(16).padStart(2, "0")}`, m = Math.round(w * 100), u[2] ? d = parseInt(u[2]) : d = Math.round(r / Math.max(n.length - 2, 1) * 100);
2258
+ const g = u[1].split(",").map((V) => V.trim()), f = parseInt(g[0]), y = parseInt(g[1]), v = parseInt(g[2]), w = g[3] ? parseFloat(g[3]) : 1;
2259
+ h = `#${f.toString(16).padStart(2, "0")}${y.toString(16).padStart(2, "0")}${v.toString(16).padStart(2, "0")}`, m = Math.round(w * 100), u[2] ? d = parseInt(u[2]) : d = Math.round(r / Math.max(n.length - 2, 1) * 100);
2260
2260
  } else {
2261
2261
  const g = c.match(/#([a-fA-F0-9]{3,8})(?:\s*(\d+)%)?/);
2262
2262
  g && (h = `#${g[1]}`, g[2] ? d = parseInt(g[2]) : d = Math.round(r / Math.max(n.length - 2, 1) * 100));
@@ -2281,8 +2281,8 @@ function Tt(p) {
2281
2281
  else {
2282
2282
  const u = c.match(/rgba?\(([^)]+)\)/);
2283
2283
  if (u) {
2284
- const g = u[1].split(",").map((V) => V.trim()), f = parseInt(g[0]), E = parseInt(g[1]), v = parseInt(g[2]), w = g[3] ? parseFloat(g[3]) : 1;
2285
- d = `#${f.toString(16).padStart(2, "0")}${E.toString(16).padStart(2, "0")}${v.toString(16).padStart(2, "0")}`, m = Math.round(w * 100);
2284
+ const g = u[1].split(",").map((V) => V.trim()), f = parseInt(g[0]), y = parseInt(g[1]), v = parseInt(g[2]), w = g[3] ? parseFloat(g[3]) : 1;
2285
+ d = `#${f.toString(16).padStart(2, "0")}${y.toString(16).padStart(2, "0")}${v.toString(16).padStart(2, "0")}`, m = Math.round(w * 100);
2286
2286
  }
2287
2287
  }
2288
2288
  if (d) {
@@ -2325,7 +2325,7 @@ class Pt {
2325
2325
  const i = document.createElement("span");
2326
2326
  i.textContent = "Color";
2327
2327
  const s = document.createElement("button");
2328
- s.className = "color-picker-close", s.innerHTML = at, s.addEventListener("click", () => this.close()), e.appendChild(i), e.appendChild(s), this.makeDraggable(e, t);
2328
+ s.className = "color-picker-close", s.innerHTML = lt, s.addEventListener("click", () => this.close()), e.appendChild(i), e.appendChild(s), this.makeDraggable(e, t);
2329
2329
  const n = document.createElement("div");
2330
2330
  n.className = "color-picker-area", this.colorArea = n;
2331
2331
  const o = document.createElement("div");
@@ -2352,8 +2352,8 @@ class Pt {
2352
2352
  g.value = "hex", g.textContent = "HEX";
2353
2353
  const f = document.createElement("option");
2354
2354
  f.value = "rgb", f.textContent = "RGB";
2355
- const E = document.createElement("option");
2356
- E.value = "hsl", E.textContent = "HSL", u.appendChild(g), u.appendChild(f), u.appendChild(E);
2355
+ const y = document.createElement("option");
2356
+ y.value = "hsl", y.textContent = "HSL", u.appendChild(g), u.appendChild(f), u.appendChild(y);
2357
2357
  const v = document.createElement("input");
2358
2358
  v.type = "text", v.className = "color-picker-color-input", v.value = this.currentColor, this.hexInput = v;
2359
2359
  const w = document.createElement("div");
@@ -2562,8 +2562,8 @@ class Pt {
2562
2562
  h.preventDefault(), h.stopPropagation();
2563
2563
  const d = h.clientX - s, m = h.clientY - n;
2564
2564
  let u = o + d, g = a + m;
2565
- const f = window.innerWidth, E = window.innerHeight, v = e.offsetWidth, w = e.offsetHeight;
2566
- u = Math.max(8, Math.min(f - v - 8, u)), g = Math.max(8, Math.min(E - w - 8, g)), e.style.left = `${u}px`, e.style.top = `${g}px`;
2565
+ const f = window.innerWidth, y = window.innerHeight, v = e.offsetWidth, w = e.offsetHeight;
2566
+ u = Math.max(8, Math.min(f - v - 8, u)), g = Math.max(8, Math.min(y - w - 8, g)), e.style.left = `${u}px`, e.style.top = `${g}px`;
2567
2567
  }, c = (h) => {
2568
2568
  i && (i = !1, h.preventDefault(), h.stopPropagation(), e.classList.remove("dragging"), document.removeEventListener("mousemove", r), document.removeEventListener("mouseup", c), document.body.style.userSelect = "");
2569
2569
  };
@@ -2576,7 +2576,7 @@ class Pt {
2576
2576
  return this.element;
2577
2577
  }
2578
2578
  }
2579
- class Ot extends S {
2579
+ class se extends S {
2580
2580
  constructor(t = {}) {
2581
2581
  let e;
2582
2582
  if (typeof t.default == "string")
@@ -2592,7 +2592,7 @@ class Ot extends S {
2592
2592
  stops: [{ color: i, position: 0, opacity: s }]
2593
2593
  };
2594
2594
  } else
2595
- e = Tt(t.default) || {
2595
+ e = nt(t.default) || {
2596
2596
  type: "linear",
2597
2597
  angle: 90,
2598
2598
  stops: [
@@ -2626,9 +2626,75 @@ class Ot extends S {
2626
2626
  !n && !o && !l && this.closePopover();
2627
2627
  }, this.detectChange = t.detectChange, this.forText = t.forText || !1;
2628
2628
  }
2629
+ // Safe getter for the value property
2630
+ getSafeValue() {
2631
+ return !this.value || !this.isValidGradientValue(this.value) ? (console.warn("Invalid value detected, returning default:", this.value), {
2632
+ type: "linear",
2633
+ angle: 90,
2634
+ stops: [
2635
+ { color: "#a84b4b", position: 0, opacity: 100 },
2636
+ { color: "#786666", position: 100, opacity: 100 }
2637
+ ]
2638
+ }) : this.value;
2639
+ }
2629
2640
  setValue(t) {
2630
2641
  let e;
2631
- !t || !this.isValidGradientValue(t) ? (console.warn(
2642
+ if (!t)
2643
+ console.warn("Undefined value in setValue, using default"), e = {
2644
+ type: "linear",
2645
+ angle: 90,
2646
+ stops: [
2647
+ { color: "#a84b4b", position: 0, opacity: 100 },
2648
+ { color: "#786666", position: 100, opacity: 100 }
2649
+ ]
2650
+ };
2651
+ else if (typeof t == "string")
2652
+ if (t.match(/^#[a-fA-F0-9]{3,8}$/)) {
2653
+ let i = t, s = 100;
2654
+ if (i.length === 9) {
2655
+ const n = parseInt(i.slice(-2), 16);
2656
+ s = Math.round(n / 255 * 100), i = i.slice(0, 7);
2657
+ }
2658
+ e = {
2659
+ type: "solid",
2660
+ angle: 90,
2661
+ stops: [{ color: i, position: 0, opacity: s }]
2662
+ };
2663
+ } else {
2664
+ const i = nt(t);
2665
+ i ? e = i : (console.warn(
2666
+ "Failed to parse string value, using default:",
2667
+ t
2668
+ ), e = {
2669
+ type: "linear",
2670
+ angle: 90,
2671
+ stops: [
2672
+ { color: "#a84b4b", position: 0, opacity: 100 },
2673
+ { color: "#786666", position: 100, opacity: 100 }
2674
+ ]
2675
+ });
2676
+ }
2677
+ else if (typeof t == "object" && t.background) {
2678
+ console.warn(
2679
+ "Received CSS style object, extracting background value:",
2680
+ t
2681
+ );
2682
+ const i = t.background;
2683
+ if (typeof i == "string") {
2684
+ this.setValue(i);
2685
+ return;
2686
+ } else
2687
+ e = {
2688
+ type: "linear",
2689
+ angle: 90,
2690
+ stops: [
2691
+ { color: "#a84b4b", position: 0, opacity: 100 },
2692
+ { color: "#786666", position: 100, opacity: 100 }
2693
+ ]
2694
+ };
2695
+ } else this.isValidGradientValue(t) ? (e = t, e.stops && e.stops.forEach((i) => {
2696
+ i.opacity === void 0 && (i.opacity = 100);
2697
+ })) : (console.warn(
2632
2698
  "Invalid gradient value in setValue, using default:",
2633
2699
  t
2634
2700
  ), e = {
@@ -2638,9 +2704,8 @@ class Ot extends S {
2638
2704
  { color: "#a84b4b", position: 0, opacity: 100 },
2639
2705
  { color: "#786666", position: 100, opacity: 100 }
2640
2706
  ]
2641
- }) : (e = t, e.stops && e.stops.forEach((i) => {
2642
- i.opacity === void 0 && (i.opacity = 100);
2643
- })), super.setValue(e), this.updateUI(), this.isPopoverOpen && this.refreshPopoverContent();
2707
+ });
2708
+ super.setValue(e), this.updateUI(), this.isPopoverOpen && this.refreshPopoverContent();
2644
2709
  }
2645
2710
  updateUI() {
2646
2711
  if (this.previewElement && this.value)
@@ -2654,7 +2719,9 @@ class Ot extends S {
2654
2719
  );
2655
2720
  }
2656
2721
  } else
2657
- this.previewElement.style.background = this.generateCSS(this.value);
2722
+ this.previewElement.style.background = this.generateCSS(
2723
+ this.getSafeValue()
2724
+ );
2658
2725
  this.textInputElement && this.value && !this.isUserEditing && (this.textInputElement.value = this.generateDisplayText(this.value));
2659
2726
  }
2660
2727
  generateDisplayText(t) {
@@ -2676,8 +2743,8 @@ class Ot extends S {
2676
2743
  n.className = "input-label", n.textContent = this.props.title, s.appendChild(n), t.appendChild(s);
2677
2744
  }
2678
2745
  const e = document.createElement("div");
2679
- e.className = "gradient-input-wrapper", this.previewElement = document.createElement("div"), this.previewElement.className = "gradient-mini-preview", this.previewElement.style.background = this.value ? this.generateCSS(this.value) : "linear-gradient(90deg, #a84b4b 0%, #786666 100%)", this.textInputElement = document.createElement("input"), this.textInputElement.type = "text", this.textInputElement.className = "gradient-text-input", this.textInputElement.placeholder = "Enter gradient CSS or paste color...", this.textInputElement.value = this.value ? this.generateDisplayText(this.value) : "", this.textInputElement.readOnly = !1, this.previewElement.addEventListener("click", () => this.openPopover()), this.textInputElement.addEventListener("focus", () => {
2680
- this.isUserEditing = !0, this.value && (this.textInputElement.value = this.generateCSS(this.value));
2746
+ e.className = "gradient-input-wrapper", this.previewElement = document.createElement("div"), this.previewElement.className = "gradient-mini-preview", this.previewElement.style.background = this.value ? this.generateCSS(this.getSafeValue()) : "linear-gradient(90deg, #a84b4b 0%, #786666 100%)", this.textInputElement = document.createElement("input"), this.textInputElement.type = "text", this.textInputElement.className = "gradient-text-input", this.textInputElement.placeholder = "Enter gradient CSS or paste color...", this.textInputElement.value = this.value ? this.generateDisplayText(this.value) : "", this.textInputElement.readOnly = !1, this.previewElement.addEventListener("click", () => this.openPopover()), this.textInputElement.addEventListener("focus", () => {
2747
+ this.isUserEditing = !0, this.value && (this.textInputElement.value = this.generateCSS(this.getSafeValue()));
2681
2748
  }), this.textInputElement.addEventListener("blur", () => {
2682
2749
  this.isUserEditing = !1, this.value && (this.textInputElement.value = this.generateDisplayText(this.value)), this.placeholderTrigger && (this.placeholderTrigger.style.display = this.textInputElement.value ? "none" : "flex");
2683
2750
  }), this.textInputElement.addEventListener(
@@ -2687,7 +2754,7 @@ class Ot extends S {
2687
2754
  "input",
2688
2755
  (s) => this.handleInput(s)
2689
2756
  ), this.textInputElement.addEventListener("keydown", (s) => {
2690
- s.key === "Enter" && (this.handleInput(s), this.textInputElement.blur()), s.key === "Escape" && (this.value && (this.textInputElement.value = this.generateCSS(this.value)), this.textInputElement.blur());
2757
+ s.key === "Enter" && (this.handleInput(s), this.textInputElement.blur()), s.key === "Escape" && (this.value && (this.textInputElement.value = this.generateCSS(this.getSafeValue())), this.textInputElement.blur());
2691
2758
  });
2692
2759
  const i = document.createElement("div");
2693
2760
  return i.className = "gradient-input-placeholder-trigger", i.textContent = this.textInputElement.placeholder || "", i.style.display = this.textInputElement.value ? "none" : "flex", i.addEventListener("click", (s) => {
@@ -2701,7 +2768,7 @@ class Ot extends S {
2701
2768
  }
2702
2769
  generateCSS(t) {
2703
2770
  if (!t || !this.isValidGradientValue(t))
2704
- return console.warn("Invalid gradient value passed to generateCSS:", t), "linear-gradient(90deg, #a84b4b 0%, #786666 100%)";
2771
+ return console.warn("Invalid gradient value passed to generateCSS:", t), console.trace("Stack trace for invalid gradient value"), "linear-gradient(90deg, #a84b4b 0%, #786666 100%)";
2705
2772
  if (t.type === "solid") {
2706
2773
  const i = t.stops && t.stops.length > 0 ? t.stops[0] : null;
2707
2774
  if (!i) return "#000000";
@@ -2764,7 +2831,7 @@ class Ot extends S {
2764
2831
  const e = document.createElement("span");
2765
2832
  e.textContent = "Fill";
2766
2833
  const i = document.createElement("button");
2767
- i.type = "button", i.className = "gradient-popover-close", i.innerHTML = at, i.addEventListener("click", () => this.closePopover()), t.appendChild(e), t.appendChild(i);
2834
+ i.type = "button", i.className = "gradient-popover-close", i.innerHTML = lt, i.addEventListener("click", () => this.closePopover()), t.appendChild(e), t.appendChild(i);
2768
2835
  const s = document.createElement("div");
2769
2836
  s.className = "gradient-editor";
2770
2837
  const n = this.createTypeTabs();
@@ -2852,8 +2919,8 @@ class Ot extends S {
2852
2919
  g.value = "hex", g.textContent = "HEX";
2853
2920
  const f = document.createElement("option");
2854
2921
  f.value = "rgb", f.textContent = "RGB";
2855
- const E = document.createElement("option");
2856
- E.value = "hsl", E.textContent = "HSL", u.appendChild(g), u.appendChild(f), u.appendChild(E);
2922
+ const y = document.createElement("option");
2923
+ y.value = "hsl", y.textContent = "HSL", u.appendChild(g), u.appendChild(f), u.appendChild(y);
2857
2924
  const v = document.createElement("input");
2858
2925
  v.type = "text", v.className = "color-picker-color-input", v.value = t;
2859
2926
  const w = document.createElement("div");
@@ -2908,10 +2975,10 @@ class Ot extends S {
2908
2975
  g.value = "hsl", g.textContent = "HSL", d.appendChild(m), d.appendChild(u), d.appendChild(g);
2909
2976
  const f = document.createElement("input");
2910
2977
  f.type = "text", f.className = "color-picker-color-input", f.value = t;
2911
- const E = document.createElement("div");
2912
- E.className = "color-picker-input-container";
2978
+ const y = document.createElement("div");
2979
+ y.className = "color-picker-input-container";
2913
2980
  const v = document.createElement("button");
2914
- return v.className = "color-picker-copy-inside", v.textContent = "Copy", E.appendChild(f), E.appendChild(v), h.appendChild(d), h.appendChild(E), s.appendChild(n), s.appendChild(a), s.appendChild(h), this.setupEmbeddedColorPicker(
2981
+ return v.className = "color-picker-copy-inside", v.textContent = "Copy", y.appendChild(f), y.appendChild(v), h.appendChild(d), h.appendChild(y), s.appendChild(n), s.appendChild(a), s.appendChild(h), this.setupEmbeddedColorPicker(
2915
2982
  n,
2916
2983
  o,
2917
2984
  r,
@@ -2930,7 +2997,7 @@ class Ot extends S {
2930
2997
  const { h: m, s: u, v: g } = this.hexToHsv(r);
2931
2998
  let f = c;
2932
2999
  s.style.left = `${m / 360 * 100}%`, e.style.left = `${u * 100}%`, e.style.top = `${(1 - g) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${m}, 100%, 50%))`;
2933
- const E = (C, b = f) => {
3000
+ const y = (C, b = f) => {
2934
3001
  d = C, f = Math.round(b), v(), h(C, f);
2935
3002
  }, v = () => {
2936
3003
  const C = n.value, { h: b, s: x, v: L } = this.hexToHsv(d);
@@ -2951,13 +3018,13 @@ class Ot extends S {
2951
3018
  }
2952
3019
  }, w = () => parseFloat(s.style.left || "0%") / 100 * 360, V = (C, b) => {
2953
3020
  const x = w(), L = this.hsvToHex(x, C, b);
2954
- E(L, f);
3021
+ y(L, f);
2955
3022
  }, z = (C) => {
2956
3023
  C = Math.max(0.1, Math.min(358.9, C));
2957
3024
  const b = parseFloat(e.style.left || "50%") / 100, x = parseFloat(e.style.top || "50%") / 100;
2958
3025
  t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${C}, 100%, 50%))`;
2959
3026
  const L = b, H = 1 - x, $ = this.hsvToHex(C, L, H);
2960
- E($, f);
3027
+ y($, f);
2961
3028
  }, U = (C) => {
2962
3029
  C.stopPropagation();
2963
3030
  const b = t.getBoundingClientRect(), x = Math.max(0, Math.min(1, (C.clientX - b.left) / b.width)), L = Math.max(0, Math.min(1, (C.clientY - b.top) / b.height));
@@ -2968,7 +3035,7 @@ class Ot extends S {
2968
3035
  document.removeEventListener("mousemove", b), document.removeEventListener("mouseup", x);
2969
3036
  };
2970
3037
  document.addEventListener("mousemove", b), document.addEventListener("mouseup", x);
2971
- }, y = (C) => {
3038
+ }, E = (C) => {
2972
3039
  C.stopPropagation();
2973
3040
  const b = i.getBoundingClientRect();
2974
3041
  let x = (C.clientX - b.left) / b.width;
@@ -2976,8 +3043,8 @@ class Ot extends S {
2976
3043
  const L = x * 360;
2977
3044
  z(L);
2978
3045
  }, k = (C) => {
2979
- C.preventDefault(), C.stopPropagation(), y(C);
2980
- const b = (L) => y(L), x = () => {
3046
+ C.preventDefault(), C.stopPropagation(), E(C);
3047
+ const b = (L) => E(L), x = () => {
2981
3048
  document.removeEventListener("mousemove", b), document.removeEventListener("mouseup", x);
2982
3049
  };
2983
3050
  document.addEventListener("mousemove", b), document.addEventListener("mouseup", x);
@@ -3004,7 +3071,7 @@ class Ot extends S {
3004
3071
  }
3005
3072
  if (L) {
3006
3073
  const { h: H, s: $, v: R } = this.hexToHsv(L);
3007
- s.style.left = `${H / 360 * 100}%`, e.style.left = `${$ * 100}%`, e.style.top = `${(1 - R) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${H}, 100%, 50%))`, E(L, f);
3074
+ s.style.left = `${H / 360 * 100}%`, e.style.left = `${$ * 100}%`, e.style.top = `${(1 - R) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${H}, 100%, 50%))`, y(L, f);
3008
3075
  }
3009
3076
  }, O = (C) => {
3010
3077
  v();
@@ -3015,12 +3082,12 @@ class Ot extends S {
3015
3082
  o.select(), document.execCommand("copy");
3016
3083
  });
3017
3084
  };
3018
- v(), t.addEventListener("mousedown", I), t.addEventListener("click", U), i.addEventListener("mousedown", k), i.addEventListener("click", y), n.addEventListener("change", T), o.addEventListener("input", P), o.addEventListener("blur", O), a.addEventListener("click", M);
3085
+ v(), t.addEventListener("mousedown", I), t.addEventListener("click", U), i.addEventListener("mousedown", k), i.addEventListener("click", E), n.addEventListener("change", T), o.addEventListener("input", P), o.addEventListener("blur", O), a.addEventListener("click", M);
3019
3086
  const A = async () => {
3020
3087
  if ("EyeDropper" in window)
3021
3088
  try {
3022
3089
  const x = (await new window.EyeDropper().open()).sRGBHex, { h: L, s: H, v: $ } = this.hexToHsv(x);
3023
- s.style.left = `${L / 360 * 100}%`, e.style.left = `${H * 100}%`, e.style.top = `${(1 - $) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${L}, 100%, 50%))`, E(x, f);
3090
+ s.style.left = `${L / 360 * 100}%`, e.style.left = `${H * 100}%`, e.style.top = `${(1 - $) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${L}, 100%, 50%))`, y(x, f);
3024
3091
  } catch (C) {
3025
3092
  console.log("User cancelled eyedropper or error occurred:", C);
3026
3093
  }
@@ -3087,22 +3154,22 @@ class Ot extends S {
3087
3154
  <path d="M14.1333 12.4667H0.8M0.8 12.4667L4.13333 9.13332M0.8 12.4667L4.13333 15.8M0.8 4.13332H14.1333M14.1333 4.13332L10.8 0.799988M14.1333 4.13332L10.8 7.46665" stroke="#919EAB" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
3088
3155
  </svg>
3089
3156
  `, l.title = "Flip gradient", i.addEventListener("change", (f) => {
3090
- const E = f.target.value;
3091
- this.switchType(E === "radial" ? "radial" : "linear");
3157
+ const y = f.target.value;
3158
+ this.switchType(y === "radial" ? "radial" : "linear");
3092
3159
  }), o.addEventListener("input", (f) => {
3093
- const E = f.target.value, v = parseInt(E);
3160
+ const y = f.target.value, v = parseInt(y);
3094
3161
  if (this.value && !isNaN(v)) {
3095
3162
  const w = Math.max(0, Math.min(360, v));
3096
3163
  this.value.angle = w, this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3097
3164
  }
3098
3165
  }), o.addEventListener("focus", (f) => {
3099
- const E = f.target;
3100
- E.value = E.value.replace(/[^0-9-]/g, ""), setTimeout(() => E.select(), 0);
3166
+ const y = f.target;
3167
+ y.value = y.value.replace(/[^0-9-]/g, ""), setTimeout(() => y.select(), 0);
3101
3168
  }), o.addEventListener("blur", (f) => {
3102
3169
  var w;
3103
- const E = f.target;
3104
- let v = parseInt(E.value);
3105
- isNaN(v) && (v = ((w = this.value) == null ? void 0 : w.angle) ?? 0), v = Math.max(0, Math.min(360, v)), this.value && (this.value.angle = v), E.value = `${v}°`, this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3170
+ const y = f.target;
3171
+ let v = parseInt(y.value);
3172
+ isNaN(v) && (v = ((w = this.value) == null ? void 0 : w.angle) ?? 0), v = Math.max(0, Math.min(360, v)), this.value && (this.value.angle = v), y.value = `${v}°`, this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3106
3173
  }), l.addEventListener("click", () => {
3107
3174
  this.value && (this.value.stops = this.value.stops.map((f) => ({
3108
3175
  ...f,
@@ -3130,7 +3197,7 @@ class Ot extends S {
3130
3197
  updateGradientPreview(t) {
3131
3198
  var i;
3132
3199
  const e = t || ((i = this.popoverElement) == null ? void 0 : i.querySelector(".gradient-preview"));
3133
- e && this.value && (e.style.background = this.generateCSS(this.value));
3200
+ e && this.value && (e.style.background = this.generateCSS(this.getSafeValue()));
3134
3201
  }
3135
3202
  createGradientHandles(t, e) {
3136
3203
  t.innerHTML = "", !(!this.value || this.value.type === "solid" || !this.value.stops) && this.value.stops.forEach((i, s) => {
@@ -3148,8 +3215,8 @@ class Ot extends S {
3148
3215
  passive: !1
3149
3216
  }), document.addEventListener("touchend", h), d.preventDefault();
3150
3217
  }, c = (d) => {
3151
- var E, v;
3152
- if (!s || !((v = (E = this.value) == null ? void 0 : E.stops) != null && v[i])) return;
3218
+ var y, v;
3219
+ if (!s || !((v = (y = this.value) == null ? void 0 : y.stops) != null && v[i])) return;
3153
3220
  const m = e.getBoundingClientRect(), g = (l(d) - n) / m.width * 100;
3154
3221
  let f = o + g;
3155
3222
  f = Math.max(0, Math.min(100, f)), this.value.stops[i].position = Math.round(f), t.style.left = `${f}%`, a && cancelAnimationFrame(a), a = requestAnimationFrame(() => {
@@ -3188,10 +3255,10 @@ class Ot extends S {
3188
3255
  <path d="M0.8 0.800003H12.4667" stroke="#919EAB" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
3189
3256
  </svg>`, m.disabled = (((U = (z = this.value) == null ? void 0 : z.stops) == null ? void 0 : U.length) || 0) <= 2, l.addEventListener("input", (I) => {
3190
3257
  var O;
3191
- const y = I.target, k = y.value.replace(/[^\d]/g, ""), P = parseInt(k);
3258
+ const E = I.target, k = E.value.replace(/[^\d]/g, ""), P = parseInt(k);
3192
3259
  if (this.value && !isNaN(P)) {
3193
3260
  const T = Math.max(0, Math.min(100, P));
3194
- this.value.stops[n].position = T, y.value = `${T}%`;
3261
+ this.value.stops[n].position = T, E.value = `${T}%`;
3195
3262
  const M = (O = this.popoverElement) == null ? void 0 : O.querySelector(
3196
3263
  ".gradient-preview"
3197
3264
  ), A = M == null ? void 0 : M.querySelector(
@@ -3200,23 +3267,23 @@ class Ot extends S {
3200
3267
  M && A && this.createGradientHandles(A, M), this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3201
3268
  }
3202
3269
  }), l.addEventListener("focus", (I) => {
3203
- const y = I.target, k = y.value.replace("%", "");
3204
- y.value = k, y.select();
3270
+ const E = I.target, k = E.value.replace("%", "");
3271
+ E.value = k, E.select();
3205
3272
  }), l.addEventListener("blur", (I) => {
3206
3273
  var O, T;
3207
- const y = I.target, k = y.value.replace(/[^\d]/g, ""), P = parseInt(k);
3274
+ const E = I.target, k = E.value.replace(/[^\d]/g, ""), P = parseInt(k);
3208
3275
  if (isNaN(P))
3209
- y.value = `${((T = (O = this.value) == null ? void 0 : O.stops[n]) == null ? void 0 : T.position) || 0}%`;
3276
+ E.value = `${((T = (O = this.value) == null ? void 0 : O.stops[n]) == null ? void 0 : T.position) || 0}%`;
3210
3277
  else {
3211
3278
  const M = Math.max(0, Math.min(100, P));
3212
- y.value = `${M}%`, this.value && (this.value.stops[n].position = M, this.updateGradientPreview(), this.updateUI(), this.triggerChange());
3279
+ E.value = `${M}%`, this.value && (this.value.stops[n].position = M, this.updateGradientPreview(), this.updateUI(), this.triggerChange());
3213
3280
  }
3214
3281
  });
3215
3282
  const u = new Pt(
3216
- (I, y) => {
3283
+ (I, E) => {
3217
3284
  var k, P, O;
3218
3285
  if (h.value = I.replace("#", "").toUpperCase(), c.style.backgroundColor = I, this.value) {
3219
- this.value.stops[n].color = I, y !== void 0 && (this.value.stops[n].opacity = y);
3286
+ this.value.stops[n].color = I, E !== void 0 && (this.value.stops[n].opacity = E);
3220
3287
  const T = (k = o.parentElement) == null ? void 0 : k.querySelector(
3221
3288
  ".gstop-opacity-slider"
3222
3289
  );
@@ -3227,11 +3294,11 @@ class Ot extends S {
3227
3294
  `rgb(${C.r}, ${C.g}, ${C.b})`
3228
3295
  );
3229
3296
  }
3230
- if (y !== void 0) {
3297
+ if (E !== void 0) {
3231
3298
  const C = (P = o.parentElement) == null ? void 0 : P.querySelector(
3232
3299
  ".gstop-opacity-value"
3233
3300
  );
3234
- C && (C.textContent = `${y}%`), T && (T.value = y.toString());
3301
+ C && (C.textContent = `${E}%`), T && (T.value = E.toString());
3235
3302
  }
3236
3303
  const M = (O = this.popoverElement) == null ? void 0 : O.querySelector(
3237
3304
  ".gradient-preview"
@@ -3246,7 +3313,7 @@ class Ot extends S {
3246
3313
  I.stopPropagation(), u.open(s.color, h, s.opacity || 100);
3247
3314
  }), h.addEventListener("input", (I) => {
3248
3315
  var P, O;
3249
- const y = I.target.value.trim(), k = y.startsWith("#") ? y : `#${y}`;
3316
+ const E = I.target.value.trim(), k = E.startsWith("#") ? E : `#${E}`;
3250
3317
  if (/^#[0-9A-Fa-f]{6}$/.test(k) && (c.style.backgroundColor = k, this.value)) {
3251
3318
  this.value.stops[n].color = k;
3252
3319
  const T = (P = o.parentElement) == null ? void 0 : P.querySelector(
@@ -3268,9 +3335,9 @@ class Ot extends S {
3268
3335
  }
3269
3336
  }), d.addEventListener("click", async (I) => {
3270
3337
  I.stopPropagation();
3271
- const y = `#${h.value}`;
3338
+ const E = `#${h.value}`;
3272
3339
  try {
3273
- await navigator.clipboard.writeText(y);
3340
+ await navigator.clipboard.writeText(E);
3274
3341
  const k = d.innerHTML;
3275
3342
  d.innerHTML = `<svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg">
3276
3343
  <path d="M9.3335 14L12.2502 16.9167L18.6668 10.5" stroke="#00A76F" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
@@ -3284,20 +3351,20 @@ class Ot extends S {
3284
3351
  var I;
3285
3352
  if (this.value && this.value.stops.length > 2) {
3286
3353
  this.value.stops.splice(n, 1);
3287
- const y = (I = this.popoverElement) == null ? void 0 : I.querySelector(
3354
+ const E = (I = this.popoverElement) == null ? void 0 : I.querySelector(
3288
3355
  ".gradient-preview"
3289
- ), k = y == null ? void 0 : y.querySelector(
3356
+ ), k = E == null ? void 0 : E.querySelector(
3290
3357
  ".gradient-handles"
3291
3358
  );
3292
- y && k && this.createGradientHandles(k, y), this.updateStopsList(), this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3359
+ E && k && this.createGradientHandles(k, E), this.updateStopsList(), this.updateGradientPreview(), this.updateUI(), this.triggerChange();
3293
3360
  }
3294
3361
  }), o.appendChild(a), o.appendChild(r), o.appendChild(m), e.appendChild(o);
3295
3362
  const g = document.createElement("div");
3296
3363
  g.className = "gstop-opacity-row";
3297
3364
  const f = document.createElement("span");
3298
3365
  f.className = "gstop-opacity-label", f.textContent = "Opacity";
3299
- const E = document.createElement("div");
3300
- E.className = "gstop-opacity-group";
3366
+ const y = document.createElement("div");
3367
+ y.className = "gstop-opacity-group";
3301
3368
  const v = document.createElement("input");
3302
3369
  v.type = "range", v.className = "gstop-opacity-slider", v.min = "0", v.max = "100", v.value = (s.opacity !== void 0 ? s.opacity : 100).toString();
3303
3370
  const w = this.hexToRgb(s.color);
@@ -3559,26 +3626,26 @@ class Ot extends S {
3559
3626
  }
3560
3627
  getValue() {
3561
3628
  return this.value ? this.forText ? {
3562
- background: this.generateCSS(this.value),
3629
+ background: this.generateCSS(this.getSafeValue()),
3563
3630
  "-webkit-background-clip": "text",
3564
3631
  "background-clip": "text",
3565
3632
  color: "transparent",
3566
3633
  "-webkit-text-fill-color": "transparent"
3567
- } : this.generateCSS(this.value) : this.forText ? {} : "";
3634
+ } : this.generateCSS(this.getSafeValue()) : this.forText ? {} : "";
3568
3635
  }
3569
3636
  getCSSValue() {
3570
- return this.value ? this.generateCSS(this.value) : "";
3637
+ return this.value ? this.generateCSS(this.getSafeValue()) : "";
3571
3638
  }
3572
3639
  // Add method to get the raw object value if needed
3573
3640
  getRawValue() {
3574
3641
  return this.value;
3575
3642
  }
3576
3643
  }
3577
- const $t = `
3644
+ const Ot = `
3578
3645
  <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3579
3646
  <path d="M5.625 9.5H5.6325M12.375 9.5H12.3825M9 9.5H9.0075M9 12.875H9.0075M9 6.125H9.0075M2.25 6.35L2.25 12.65C2.25 13.9101 2.25 14.5402 2.49524 15.0215C2.71095 15.4448 3.05516 15.789 3.47852 16.0048C3.95982 16.25 4.58988 16.25 5.85 16.25H12.15C13.4101 16.25 14.0402 16.25 14.5215 16.0048C14.9448 15.789 15.289 15.4448 15.5048 15.0215C15.75 14.5402 15.75 13.9101 15.75 12.65V6.35C15.75 5.08988 15.75 4.45982 15.5048 3.97852C15.289 3.55516 14.9448 3.21095 14.5215 2.99524C14.0402 2.75 13.4101 2.75 12.15 2.75L5.85 2.75C4.58988 2.75 3.95982 2.75 3.47852 2.99524C3.05516 3.21095 2.71095 3.55516 2.49524 3.97852C2.25 4.45982 2.25 5.08988 2.25 6.35Z" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3580
3647
  </svg>
3581
- `, At = `
3648
+ `, $t = `
3582
3649
  <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3583
3650
  <path d="M6 2.75H5.85C4.58988 2.75 3.95982 2.75 3.47852 2.99524C3.05516 3.21095 2.71095 3.55516 2.49524 3.97852C2.25 4.45982 2.25 5.08988 2.25 6.35V6.5M6 16.25H5.85C4.58988 16.25 3.95982 16.25 3.47852 16.0048C3.05516 15.789 2.71095 15.4448 2.49524 15.0215C2.25 14.5402 2.25 13.9101 2.25 12.65V12.5M15.75 6.5V6.35C15.75 5.08988 15.75 4.45982 15.5048 3.97852C15.289 3.55516 14.9448 3.21095 14.5215 2.99524C14.0402 2.75 13.4101 2.75 12.15 2.75H12M15.75 12.5V12.65C15.75 13.9101 15.75 14.5402 15.5048 15.0215C15.289 15.4448 14.9448 15.789 14.5215 16.0048C14.0402 16.25 13.4101 16.25 12.15 16.25H12" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3584
3651
  </svg>
@@ -3589,18 +3656,18 @@ class ne extends G {
3589
3656
  title: "Border",
3590
3657
  collapsed: t == null ? void 0 : t.collapsed,
3591
3658
  settings: {
3592
- size: new F({
3659
+ size: new D({
3593
3660
  title: "Size",
3594
- icon: At,
3661
+ icon: $t,
3595
3662
  default: (t == null ? void 0 : t.size) ?? 0,
3596
3663
  suffix: "px"
3597
3664
  }),
3598
3665
  color: new W({
3599
3666
  default: (t == null ? void 0 : t.color) ?? "0, 0, 30"
3600
3667
  }),
3601
- radius: new F({
3668
+ radius: new D({
3602
3669
  title: "Radius",
3603
- icon: $t,
3670
+ icon: Ot,
3604
3671
  default: (t == null ? void 0 : t.radius) ?? 12,
3605
3672
  suffix: "px"
3606
3673
  })
@@ -3619,11 +3686,11 @@ class ne extends G {
3619
3686
  `;
3620
3687
  }
3621
3688
  }
3622
- const Bt = `
3689
+ const At = `
3623
3690
  <svg xmlns="http://www.w3.org/2000/svg" width="14" height="13" viewBox="0 0 14 13" fill="none">
3624
3691
  <path d="M1 2.75C1 2.05109 1 1.70163 1.11418 1.42597C1.26642 1.05843 1.55843 0.766422 1.92597 0.614181C2.20163 0.5 2.55109 0.5 3.25 0.5H10.75C11.4489 0.5 11.7984 0.5 12.074 0.614181C12.4416 0.766422 12.7336 1.05843 12.8858 1.42597C13 1.70163 13 2.05109 13 2.75M4.75 12.5H9.25M7 0.5V12.5" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3625
3692
  </svg>
3626
- `, Dt = `
3693
+ `, Bt = `
3627
3694
  <svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3628
3695
  <path d="M3 5.75C3 5.05109 3 4.70163 3.11418 4.42597C3.26642 4.05843 3.55843 3.76642 3.92597 3.61418C4.20163 3.5 4.55109 3.5 5.25 3.5H12.75C13.4489 3.5 13.7984 3.5 14.074 3.61418C14.4416 3.76642 14.7336 4.05843 14.8858 4.42597C15 4.70163 15 5.05109 15 5.75M6 15.5H12M7.6875 3.5V15.5M10.3125 3.5V15.5" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3629
3696
  </svg>
@@ -3639,14 +3706,13 @@ class oe extends G {
3639
3706
  title: i.title || "Typography",
3640
3707
  collapsed: i.collapsed,
3641
3708
  settings: (() => {
3642
- const s = i.gradientDefault || i.colorDefault, n = {
3643
- color: new Ot({
3644
- forText: !0,
3645
- default: s
3709
+ const s = {
3710
+ color: new W({
3711
+ default: i.colorDefault ?? "0, 0, 30"
3646
3712
  }),
3647
3713
  fontFamily: new et({
3648
3714
  title: "Font",
3649
- icon: Bt,
3715
+ icon: At,
3650
3716
  default: i.fontFamilyDefault ?? "Satoshi",
3651
3717
  options: i.fontFamilyOptions ?? [
3652
3718
  { name: "Alt", value: "Croco Sans Black Caps Alt" },
@@ -3659,7 +3725,7 @@ class oe extends G {
3659
3725
  }),
3660
3726
  fontWeight: new et({
3661
3727
  title: "Weight",
3662
- icon: Dt,
3728
+ icon: Bt,
3663
3729
  default: i.fontWeightDefault ?? "400",
3664
3730
  options: i.fontWeightOptions ?? [
3665
3731
  { name: "Regular", value: "400" },
@@ -3669,7 +3735,7 @@ class oe extends G {
3669
3735
  getOptions: i.fontWeightGetOptions,
3670
3736
  getOptionsAsync: i.fontWeightGetOptionsAsync
3671
3737
  }),
3672
- fontSize: new F({
3738
+ fontSize: new D({
3673
3739
  title: "Size",
3674
3740
  icon: Ft,
3675
3741
  default: i.fontSizeDefault ?? 12,
@@ -3678,34 +3744,25 @@ class oe extends G {
3678
3744
  })
3679
3745
  };
3680
3746
  return e ? {
3681
- ...n,
3682
- align: new yt({
3747
+ ...s,
3748
+ align: new bt({
3683
3749
  title: "Align",
3684
3750
  default: i.alignDefault ?? "center"
3685
3751
  })
3686
- } : n;
3752
+ } : s;
3687
3753
  })()
3688
3754
  });
3689
3755
  }
3690
3756
  getCssCode() {
3691
- var a;
3692
- const t = this.settings.color.getCSSValue() ?? "rgba(0, 0, 0, 1)", e = this.settings.fontFamily.value ?? "Satoshi", i = this.settings.fontWeight.value ?? "400", s = this.settings.fontSize.value ?? 12, n = ((a = this.settings.align) == null ? void 0 : a.value) ?? "left";
3693
- return t.includes("gradient") ? `
3694
- background: ${t};
3695
- -webkit-background-clip: text;
3696
- -webkit-text-fill-color: transparent;
3697
- background-clip: text;
3698
- font-family: ${e};
3699
- font-weight: ${i};
3700
- font-size: ${s}px;
3701
- text-align: ${n};
3702
- ` : `
3703
- color: ${t};
3704
- font-family: ${e};
3705
- font-weight: ${i};
3706
- font-size: ${s}px;
3707
- text-align: ${n};
3708
- `;
3757
+ var o;
3758
+ const t = this.settings.color.value ?? "#000000", e = this.settings.fontFamily.value ?? "Satoshi", i = this.settings.fontWeight.value ?? "bold", s = this.settings.fontSize.value ?? 12, n = ((o = this.settings.align) == null ? void 0 : o.value) ?? "left";
3759
+ return `
3760
+ color: ${t};
3761
+ font-family: ${e};
3762
+ font-weight: ${i};
3763
+ font-size: ${s}px;
3764
+ text-align: ${n};
3765
+ `;
3709
3766
  }
3710
3767
  }
3711
3768
  class J extends S {
@@ -3762,25 +3819,25 @@ class ae extends G {
3762
3819
  settings: {
3763
3820
  marginTop: new J({
3764
3821
  title: "Top",
3765
- icon: Rt,
3822
+ icon: Dt,
3766
3823
  suffix: "px",
3767
3824
  default: (t == null ? void 0 : t.marginTop) ?? "auto"
3768
3825
  }),
3769
3826
  marginRight: new J({
3770
3827
  title: "Right",
3771
- icon: Gt,
3828
+ icon: Rt,
3772
3829
  suffix: "px",
3773
3830
  default: (t == null ? void 0 : t.marginRight) ?? 0
3774
3831
  }),
3775
3832
  marginBottom: new J({
3776
3833
  title: "Bottom",
3777
- icon: Wt,
3834
+ icon: Gt,
3778
3835
  suffix: "px",
3779
3836
  default: (t == null ? void 0 : t.marginBottom) ?? 0
3780
3837
  }),
3781
3838
  marginLeft: new J({
3782
3839
  title: "Left",
3783
- icon: zt,
3840
+ icon: Wt,
3784
3841
  suffix: "px",
3785
3842
  default: (t == null ? void 0 : t.marginLeft) ?? 0
3786
3843
  })
@@ -3797,13 +3854,13 @@ class ae extends G {
3797
3854
  `;
3798
3855
  }
3799
3856
  }
3800
- const Rt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3857
+ const Dt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3801
3858
  <path d="M2.25 16.25H2.2575M2.25 9.5H2.2575M2.25 12.875H2.2575M2.25 6.125H2.2575M5.625 16.25H5.6325M5.625 9.5H5.6325M12.375 16.25H12.3825M12.375 9.5H12.3825M9 16.25H9.0075M9 9.5H9.0075M9 12.875H9.0075M9 6.125H9.0075M15.75 16.25H15.7575M15.75 9.5H15.7575M15.75 12.875H15.7575M15.75 6.125H15.7575M15.75 2.75H2.25" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3802
- </svg>`, Gt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3859
+ </svg>`, Rt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3803
3860
  <path d="M5.625 2.75H5.6325M5.625 9.5H5.6325M5.625 16.25H5.6325M12.375 2.75H12.3825M12.375 9.5H12.3825M12.375 16.25H12.3825M9 2.75H9.0075M9 9.5H9.0075M9 16.25H9.0075M9 12.875H9.0075M9 6.125H9.0075M2.25 2.75H2.2575M2.25 9.5H2.2575M2.25 16.25H2.2575M2.25 12.875H2.2575M2.25 6.125H2.2575M15.75 16.25V2.75" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3804
- </svg>`, Wt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3861
+ </svg>`, Gt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3805
3862
  <path d="M2.25 2.75H2.2575M2.25 9.5H2.2575M2.25 12.875H2.2575M2.25 6.125H2.2575M5.625 2.75H5.6325M5.625 9.5H5.6325M12.375 2.75H12.3825M12.375 9.5H12.3825M9 2.75H9.0075M9 9.5H9.0075M9 12.875H9.0075M9 6.125H9.0075M15.75 2.75H15.7575M15.75 9.5H15.7575M15.75 12.875H15.7575M15.75 6.125H15.7575M15.75 16.25H2.25" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3806
- </svg>`, zt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3863
+ </svg>`, Wt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
3807
3864
  <path d="M5.625 2.75H5.6325M5.625 9.5H5.6325M5.625 16.25H5.6325M12.375 2.75H12.3825M12.375 9.5H12.3825M12.375 16.25H12.3825M9 2.75H9.0075M9 9.5H9.0075M9 16.25H9.0075M9 12.875H9.0075M9 6.125H9.0075M15.75 2.75H15.7575M15.75 9.5H15.7575M15.75 16.25H15.7575M15.75 12.875H15.7575M15.75 6.125H15.7575M2.25 16.25V2.75" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
3808
3865
  </svg>`;
3809
3866
  class le extends G {
@@ -3812,11 +3869,11 @@ class le extends G {
3812
3869
  title: "Background Image",
3813
3870
  collapsed: t == null ? void 0 : t.collapsed,
3814
3871
  settings: {
3815
- backgroundImage: new ot({
3872
+ backgroundImage: new at({
3816
3873
  ...t == null ? void 0 : t.uploadProps,
3817
3874
  default: (t == null ? void 0 : t.backgroundImage) ?? ""
3818
3875
  }),
3819
- opacity: new Ct({
3876
+ opacity: new yt({
3820
3877
  default: (t == null ? void 0 : t.opacity) ?? 100
3821
3878
  }),
3822
3879
  backgroundColor: new W({
@@ -3846,38 +3903,38 @@ class le extends G {
3846
3903
  }
3847
3904
  }
3848
3905
  export {
3849
- yt as AlignSetting,
3850
- se as AnimationSetting,
3906
+ bt as AlignSetting,
3907
+ ie as AnimationSetting,
3851
3908
  le as BackgroundSettingSet,
3852
3909
  ne as BorderSettingSet,
3853
- qt as ButtonSetting,
3854
- D as ColorSetting,
3910
+ _t as ButtonSetting,
3911
+ F as ColorSetting,
3855
3912
  W as ColorWithOpacitySetting,
3856
- Jt as DimensionSetting,
3857
- Qt as GapSetting,
3858
- Ot as GradientSetting,
3913
+ qt as DimensionSetting,
3914
+ Kt as GapSetting,
3915
+ se as GradientSetting,
3859
3916
  oe as HeaderTypographySettingSet,
3860
- Zt as HeightSetting,
3861
- _t as HtmlSetting,
3862
- te as MarginBottomSetting,
3917
+ Jt as HeightSetting,
3918
+ jt as HtmlSetting,
3919
+ Qt as MarginBottomSetting,
3863
3920
  ae as MarginSettingGroup,
3864
- ee as MarginTopSetting,
3865
- ie as MultiLanguageSetting,
3866
- F as NumberSetting,
3867
- Ct as OpacitySetting,
3868
- Yt as SelectApiSettings,
3921
+ te as MarginTopSetting,
3922
+ ee as MultiLanguageSetting,
3923
+ D as NumberSetting,
3924
+ yt as OpacitySetting,
3925
+ Xt as SelectApiSettings,
3869
3926
  et as SelectSetting,
3870
3927
  S as Setting,
3871
3928
  G as SettingGroup,
3872
- gt as StringSetting,
3873
- pt as TabSettingGroup,
3874
- pt as TabsSettingGroup,
3875
- Kt as Toggle,
3876
- ot as UploadSetting,
3877
- Xt as WidthSetting,
3878
- jt as asSettingGroupWithSettings,
3879
- ut as createSettingGroup,
3880
- Ut as createTabSettingGroup,
3929
+ mt as StringSetting,
3930
+ ut as TabSettingGroup,
3931
+ ut as TabsSettingGroup,
3932
+ Yt as Toggle,
3933
+ at as UploadSetting,
3934
+ Zt as WidthSetting,
3935
+ Ut as asSettingGroupWithSettings,
3936
+ gt as createSettingGroup,
3937
+ zt as createTabSettingGroup,
3881
3938
  j as isSetting,
3882
3939
  st as isSettingChild,
3883
3940
  N as isSettingGroup,