builder-settings-types 0.0.278 → 0.0.279
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/builder-settings-types.cjs.js +30 -30
- package/dist/builder-settings-types.es.js +446 -414
- package/dist/settings/gradient-settings/GradientSetting.d.ts +1 -1
- package/dist/settings/gradient-settings/components/EmbeddedColorPicker.d.ts +2 -0
- package/dist/settings/gradient-settings/recent/RecentColorManager.d.ts +3 -3
- package/dist/settings/gradient-settings/recent/createRecentColorsSection.d.ts +2 -2
- package/dist/settings/gradient-settings/utils/types.d.ts +1 -1
- package/package.json +1 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const ft = "useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";
|
|
2
|
-
let
|
|
2
|
+
let ht = (c = 21) => {
|
|
3
3
|
let t = "", e = crypto.getRandomValues(new Uint8Array(c |= 0));
|
|
4
4
|
for (; c--; )
|
|
5
5
|
t += ft[e[c] & 63];
|
|
@@ -11,14 +11,14 @@ function vt(c) {
|
|
|
11
11
|
e.classList.contains("setting-group") && e !== c && t++, e = e.parentElement;
|
|
12
12
|
return t;
|
|
13
13
|
}
|
|
14
|
-
function
|
|
14
|
+
function J(c, t) {
|
|
15
15
|
const e = Math.min(Math.max(t, 0), 5);
|
|
16
16
|
c.setAttribute("data-nesting-level", e.toString()), e > 0 ? c.style.setProperty("--visual-indent", `${e * 2}px`) : (c.style.removeProperty("--visual-indent"), c.style.marginLeft = "");
|
|
17
17
|
}
|
|
18
18
|
function tt(c, t = 0) {
|
|
19
19
|
c.querySelectorAll(":scope > .setting-group-content > .setting-group").forEach((i) => {
|
|
20
20
|
const s = i, n = t + 1;
|
|
21
|
-
|
|
21
|
+
J(s, n), tt(s, n);
|
|
22
22
|
});
|
|
23
23
|
}
|
|
24
24
|
const Ct = {
|
|
@@ -111,15 +111,15 @@ class yt {
|
|
|
111
111
|
this.observer && (this.observer.disconnect(), this.observer = void 0), this.observedElements.clear();
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
|
-
const
|
|
115
|
-
function
|
|
114
|
+
const nt = new yt();
|
|
115
|
+
function X(c) {
|
|
116
116
|
if (c === null || typeof c != "object") return c;
|
|
117
117
|
if (c instanceof Date) return new Date(c.getTime());
|
|
118
|
-
if (c instanceof Array) return c.map((t) =>
|
|
118
|
+
if (c instanceof Array) return c.map((t) => X(t));
|
|
119
119
|
if (typeof c == "object") {
|
|
120
120
|
const t = {};
|
|
121
121
|
for (const e in c)
|
|
122
|
-
Object.prototype.hasOwnProperty.call(c, e) && (t[e] =
|
|
122
|
+
Object.prototype.hasOwnProperty.call(c, e) && (t[e] = X(c[e]));
|
|
123
123
|
return t;
|
|
124
124
|
}
|
|
125
125
|
return c;
|
|
@@ -142,15 +142,15 @@ function Et(c) {
|
|
|
142
142
|
return "";
|
|
143
143
|
}
|
|
144
144
|
}
|
|
145
|
-
class
|
|
145
|
+
class w {
|
|
146
146
|
constructor(t = {}) {
|
|
147
|
-
this.props = t, this.dataPropsPath = "", this.id = t.id ||
|
|
147
|
+
this.props = t, this.dataPropsPath = "", this.id = t.id || ht(), 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
|
-
globalThis.DefaultUploadUrl = t,
|
|
150
|
+
globalThis.DefaultUploadUrl = t, w.DefaultUploadUrl = t;
|
|
151
151
|
}
|
|
152
152
|
static SetDefaultLanguage(t) {
|
|
153
|
-
globalThis.DefaultLanguage = t,
|
|
153
|
+
globalThis.DefaultLanguage = t, w.DefaultLanguage = t;
|
|
154
154
|
}
|
|
155
155
|
destroy() {
|
|
156
156
|
throw new Error("Method not implemented.");
|
|
@@ -171,8 +171,8 @@ class b {
|
|
|
171
171
|
this.value = t, this.inputEl && (this.inputEl.value = String(t)), this.onChange && this.onChange(t), this.props.detectChange && this.props.detectChange(t);
|
|
172
172
|
}
|
|
173
173
|
clone() {
|
|
174
|
-
const t = this.constructor, e =
|
|
175
|
-
return i.value =
|
|
174
|
+
const t = this.constructor, e = X(this.props), i = new t(e);
|
|
175
|
+
return i.value = X(this.value), i;
|
|
176
176
|
}
|
|
177
177
|
createInput(t) {
|
|
178
178
|
t = { ...this.props.inputProps, ...t };
|
|
@@ -233,30 +233,30 @@ class b {
|
|
|
233
233
|
return i.className = "input-icon " + (e || ""), i.innerHTML = t, i;
|
|
234
234
|
}
|
|
235
235
|
}
|
|
236
|
-
function
|
|
237
|
-
return c instanceof
|
|
236
|
+
function R(c) {
|
|
237
|
+
return c instanceof w;
|
|
238
238
|
}
|
|
239
239
|
function L(c) {
|
|
240
|
-
return c instanceof
|
|
240
|
+
return c instanceof T;
|
|
241
241
|
}
|
|
242
|
-
function
|
|
243
|
-
return
|
|
242
|
+
function ot(c) {
|
|
243
|
+
return R(c) || L(c);
|
|
244
244
|
}
|
|
245
|
-
function
|
|
245
|
+
function j(c, t) {
|
|
246
246
|
for (const e in c)
|
|
247
247
|
if (Object.prototype.hasOwnProperty.call(c, e)) {
|
|
248
248
|
const i = c[e];
|
|
249
249
|
t(e, i);
|
|
250
250
|
}
|
|
251
251
|
}
|
|
252
|
-
const
|
|
252
|
+
const K = class K {
|
|
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.hide = !1, this.id = t.id ||
|
|
255
|
+
}, this.pendingBlurHandler = null, this.originalDefaultValues = {}, this.nestingLevel = 0, this.dataPropsPath = "", this.hide = !1, this.id = t.id || ht(), 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 || "", this.hide = t.hide ?? !1, 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;
|
|
259
|
-
|
|
259
|
+
j(this.settings, (e, i) => {
|
|
260
260
|
L(i) && (i.nestingLevel = t, i.propagateNestingLevel());
|
|
261
261
|
});
|
|
262
262
|
}
|
|
@@ -273,13 +273,13 @@ const Z = class Z {
|
|
|
273
273
|
this.dataPropsPath = t, this.propagateDataPropsPath();
|
|
274
274
|
}
|
|
275
275
|
propagateDataPropsPath() {
|
|
276
|
-
|
|
276
|
+
j(this.settings, (t, e) => {
|
|
277
277
|
const i = String(t), s = this.dataPropsPath ? `${this.dataPropsPath}_${i}` : i;
|
|
278
|
-
(L(e) ||
|
|
278
|
+
(L(e) || R(e) && typeof e.setDataPropsPath == "function") && e.setDataPropsPath(s);
|
|
279
279
|
});
|
|
280
280
|
}
|
|
281
281
|
updateNestingStyles() {
|
|
282
|
-
this.elementRef && (
|
|
282
|
+
this.elementRef && (J(this.elementRef, this.nestingLevel), tt(this.elementRef, this.nestingLevel));
|
|
283
283
|
}
|
|
284
284
|
forceChildUIRefresh() {
|
|
285
285
|
Object.entries(this.settings).forEach(([t, e]) => {
|
|
@@ -328,7 +328,7 @@ const Z = class Z {
|
|
|
328
328
|
}
|
|
329
329
|
clone() {
|
|
330
330
|
const t = {};
|
|
331
|
-
|
|
331
|
+
j(this.settings, (s, n) => {
|
|
332
332
|
const o = String(s);
|
|
333
333
|
typeof n.clone == "function" ? t[o] = n.clone() : (console.warn(
|
|
334
334
|
`Setting with key '${o}' does not have a clone method. Copying reference.`
|
|
@@ -355,7 +355,7 @@ const Z = class Z {
|
|
|
355
355
|
setMobileValues(t) {
|
|
356
356
|
!t || typeof t != "object" || (Object.entries(t).forEach(([e, i]) => {
|
|
357
357
|
const s = this.settings[e];
|
|
358
|
-
s && (L(s) ||
|
|
358
|
+
s && (L(s) || R(s)) && typeof s.setMobileValue == "function" && s.setMobileValue(i);
|
|
359
359
|
}), this.setValue(t), this.onChange && this.onChange(this.getValues()));
|
|
360
360
|
}
|
|
361
361
|
getMobileValues(t) {
|
|
@@ -391,14 +391,14 @@ const Z = class Z {
|
|
|
391
391
|
Object.keys(s).length > 0 && (this.lastChangeTime = Date.now(), this.initialValues = i, t(i), this.updateVisibility()), this.isHandlingChange = !1;
|
|
392
392
|
}, 50));
|
|
393
393
|
};
|
|
394
|
-
return this.changeHandlers.clear(),
|
|
394
|
+
return this.changeHandlers.clear(), j(this.settings, (i, s) => {
|
|
395
395
|
var n;
|
|
396
396
|
if (L(s))
|
|
397
397
|
s.setOnChange(() => {
|
|
398
398
|
const o = this.getValues();
|
|
399
399
|
this.initialValues = o, t(o);
|
|
400
400
|
}), this.changeHandlers.add(() => t(this.getValues()));
|
|
401
|
-
else if (
|
|
401
|
+
else if (R(s)) {
|
|
402
402
|
const o = () => e();
|
|
403
403
|
this.changeHandlers.add(o), s.setOnChange(o);
|
|
404
404
|
} else {
|
|
@@ -421,10 +421,10 @@ const Z = class Z {
|
|
|
421
421
|
const o = i.slice(this.addItemCfg.keyPrefix.length), a = Number(o);
|
|
422
422
|
if (Number.isFinite(a)) {
|
|
423
423
|
const l = this.addItemCfg.createItem(a);
|
|
424
|
-
|
|
424
|
+
ot(l) && (this.addSetting(i, l), n = l);
|
|
425
425
|
}
|
|
426
426
|
}
|
|
427
|
-
n && (L(n) ||
|
|
427
|
+
n && (L(n) || R(n)) && typeof n.setValue == "function" && n.setValue(s);
|
|
428
428
|
}), setTimeout(() => {
|
|
429
429
|
this.forceChildUIRefresh();
|
|
430
430
|
}, 0);
|
|
@@ -438,7 +438,7 @@ const Z = class Z {
|
|
|
438
438
|
const s = this.getValues();
|
|
439
439
|
this.initialValues = s, (n = this.onChange) == null || n.call(this, s), this.updateVisibility();
|
|
440
440
|
};
|
|
441
|
-
L(t) ? t.setOnChange(() => e()) :
|
|
441
|
+
L(t) ? t.setOnChange(() => e()) : R(t) ? t.setOnChange(() => e()) : (i = t.setOnChange) == null || i.call(t, () => e());
|
|
442
442
|
}
|
|
443
443
|
addSetting(t, e) {
|
|
444
444
|
var s, n;
|
|
@@ -454,7 +454,7 @@ const Z = class Z {
|
|
|
454
454
|
p && t.startsWith(p) && this.addDeleteButtonToElement(a, t);
|
|
455
455
|
}
|
|
456
456
|
const r = o.querySelector(".sg-add-button-bottom");
|
|
457
|
-
r ? o.insertBefore(a, r) : o.appendChild(a),
|
|
457
|
+
r ? o.insertBefore(a, r) : o.appendChild(a), nt.trackElement(a), J(a, this.nestingLevel + 1), tt(a, this.nestingLevel + 1);
|
|
458
458
|
const h = a.style.display;
|
|
459
459
|
a.style.display = "none", a.offsetHeight, a.style.display = h, this.updateNestingStyles();
|
|
460
460
|
}
|
|
@@ -705,7 +705,7 @@ const Z = class Z {
|
|
|
705
705
|
}
|
|
706
706
|
draw() {
|
|
707
707
|
const t = document.createElement("div");
|
|
708
|
-
t.className = "setting-group", t.id = `setting-group-${this.id}`,
|
|
708
|
+
t.className = "setting-group", t.id = `setting-group-${this.id}`, K.hiddenElements.add(t), this.hide && (t.style.display = "none"), this.isMain && t.classList.add("main-group"), this.custom && t.classList.add("custom_class"), J(t, this.nestingLevel);
|
|
709
709
|
const e = document.createElement("div");
|
|
710
710
|
e.className = "setting-group-title", this.isCollapsed && e.classList.add("collapsed-view"), e.setAttribute("role", "button"), e.setAttribute(
|
|
711
711
|
"aria-expanded",
|
|
@@ -760,14 +760,14 @@ const Z = class Z {
|
|
|
760
760
|
</svg>`;
|
|
761
761
|
h.innerHTML = `${p}<span style="margin-left:4px;">${this.addItemCfg.buttonLabel ?? "Add"}</span>`, h.addEventListener("click", (d) => {
|
|
762
762
|
d.stopPropagation(), d.preventDefault();
|
|
763
|
-
const
|
|
764
|
-
if (
|
|
765
|
-
const m = `${this.addItemCfg.keyPrefix}${
|
|
766
|
-
this.addSetting(m,
|
|
763
|
+
const u = this.getNextIndexFromPrefix(this.addItemCfg.keyPrefix), g = this.addItemCfg.createItem(u);
|
|
764
|
+
if (ot(g)) {
|
|
765
|
+
const m = `${this.addItemCfg.keyPrefix}${u}`;
|
|
766
|
+
this.addSetting(m, g);
|
|
767
767
|
}
|
|
768
768
|
}), a.appendChild(h);
|
|
769
769
|
}
|
|
770
|
-
return e.appendChild(i), e.appendChild(n), t.appendChild(e), t.appendChild(a), this.elementRef = t,
|
|
770
|
+
return e.appendChild(i), e.appendChild(n), t.appendChild(e), t.appendChild(a), this.elementRef = t, nt.trackElement(t), setTimeout(() => {
|
|
771
771
|
this.updateNestingStyles();
|
|
772
772
|
}, 0), this.pendingBlurHandler && (this.pendingBlurHandler = null), t;
|
|
773
773
|
}
|
|
@@ -809,12 +809,12 @@ const Z = class Z {
|
|
|
809
809
|
}
|
|
810
810
|
}
|
|
811
811
|
};
|
|
812
|
-
|
|
813
|
-
let
|
|
812
|
+
K.hiddenElements = /* @__PURE__ */ new Set();
|
|
813
|
+
let T = K;
|
|
814
814
|
function ae(c) {
|
|
815
815
|
return new bt(c);
|
|
816
816
|
}
|
|
817
|
-
class bt extends
|
|
817
|
+
class bt extends T {
|
|
818
818
|
constructor(t) {
|
|
819
819
|
super(t);
|
|
820
820
|
const e = Object.keys(this.settings)[0];
|
|
@@ -866,12 +866,12 @@ class bt extends V {
|
|
|
866
866
|
}
|
|
867
867
|
}
|
|
868
868
|
function wt(c) {
|
|
869
|
-
return new
|
|
869
|
+
return new T(c);
|
|
870
870
|
}
|
|
871
871
|
function le(c) {
|
|
872
872
|
return c;
|
|
873
873
|
}
|
|
874
|
-
class xt extends
|
|
874
|
+
class xt extends w {
|
|
875
875
|
constructor(t = {}) {
|
|
876
876
|
super(t), this.inputType = "text", t.onChange && this.setOnChange(t.onChange);
|
|
877
877
|
}
|
|
@@ -1001,7 +1001,7 @@ const kt = `
|
|
|
1001
1001
|
<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"/>
|
|
1002
1002
|
<path d="M9 1V17C4.58172 17 1 13.4183 1 9C1 4.58172 4.58172 1 9 1Z" fill="#667085" stroke="#667085" stroke-width="0.5" stroke-linecap="round" stroke-linejoin="round" opacity="0.5"/>
|
|
1003
1003
|
</svg>`;
|
|
1004
|
-
class P extends
|
|
1004
|
+
class P extends w {
|
|
1005
1005
|
constructor(t = {}) {
|
|
1006
1006
|
super({
|
|
1007
1007
|
...t,
|
|
@@ -1123,7 +1123,7 @@ class P extends b {
|
|
|
1123
1123
|
};
|
|
1124
1124
|
}
|
|
1125
1125
|
}
|
|
1126
|
-
class re extends
|
|
1126
|
+
class re extends w {
|
|
1127
1127
|
constructor(t = {}) {
|
|
1128
1128
|
super(t), this.inputType = "text", t.onChange && this.setOnChange(t.onChange);
|
|
1129
1129
|
}
|
|
@@ -1155,7 +1155,7 @@ class re extends b {
|
|
|
1155
1155
|
return e.addEventListener("input", i), e.addEventListener("change", i), e.addEventListener("blur", s), t.appendChild(e), t;
|
|
1156
1156
|
}
|
|
1157
1157
|
}
|
|
1158
|
-
class I extends
|
|
1158
|
+
class I extends w {
|
|
1159
1159
|
constructor(t) {
|
|
1160
1160
|
super(t), this.inputType = "number", this.inputElement = null, this.mobileValue = t.mobile, this.validateProps(), this.value = this.validateValue(this.value);
|
|
1161
1161
|
}
|
|
@@ -1245,7 +1245,7 @@ const It = `
|
|
|
1245
1245
|
<polyline points="6 9 12 15 18 9"></polyline>
|
|
1246
1246
|
</svg>
|
|
1247
1247
|
`;
|
|
1248
|
-
class et extends
|
|
1248
|
+
class et extends w {
|
|
1249
1249
|
constructor(t = {}) {
|
|
1250
1250
|
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.clickOutsideListener = null, this.resizeListener = null, t.options && (this._options = [...t.options]), t.getOptions && this._options.push(...t.getOptions()), t.getOptionsAsync && (this.isLoading = !0), this.value !== void 0) {
|
|
1251
1251
|
const e = this._options.findIndex((i) => i.value === this.value);
|
|
@@ -1358,7 +1358,7 @@ class et extends b {
|
|
|
1358
1358
|
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();
|
|
1359
1359
|
}
|
|
1360
1360
|
}
|
|
1361
|
-
class Nt extends
|
|
1361
|
+
class Nt extends w {
|
|
1362
1362
|
constructor(t = {}) {
|
|
1363
1363
|
super(t), this.inputType = "button", this.value || (this.value = "center");
|
|
1364
1364
|
}
|
|
@@ -1414,7 +1414,7 @@ class Nt extends b {
|
|
|
1414
1414
|
}), t.appendChild(i), t;
|
|
1415
1415
|
}
|
|
1416
1416
|
}
|
|
1417
|
-
class ce extends
|
|
1417
|
+
class ce extends w {
|
|
1418
1418
|
constructor(t) {
|
|
1419
1419
|
super(t), this.inputType = "button", this.bgWithAlpha = "rgba(145, 158, 171, 0.08)";
|
|
1420
1420
|
}
|
|
@@ -1443,7 +1443,7 @@ class ce extends b {
|
|
|
1443
1443
|
return o.className = "button-setting-wrapper " + (this.props.wrapperClassName || ""), o.appendChild(t), o;
|
|
1444
1444
|
}
|
|
1445
1445
|
}
|
|
1446
|
-
class he extends
|
|
1446
|
+
class he extends w {
|
|
1447
1447
|
constructor(t = {}) {
|
|
1448
1448
|
super(t), this.inputType = { width: "number", height: "number" }, this.aspectRatio = 1, this.isUpdating = !1;
|
|
1449
1449
|
const e = t.width || 0, i = t.height || 0;
|
|
@@ -1561,7 +1561,7 @@ const Vt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewB
|
|
|
1561
1561
|
<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"/>
|
|
1562
1562
|
</svg>`, Tt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
|
|
1563
1563
|
<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"/>
|
|
1564
|
-
</svg>`,
|
|
1564
|
+
</svg>`, Y = `
|
|
1565
1565
|
<svg xmlns="http://www.w3.org/2000/svg" width="15" height="16" viewBox="0 0 15 16" fill="none">
|
|
1566
1566
|
<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"/>
|
|
1567
1567
|
</svg>
|
|
@@ -1594,7 +1594,7 @@ const Vt = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewB
|
|
|
1594
1594
|
<circle cx="6.7" cy="6.7" r="1.5" fill="#02CC59" opacity="0.3"/>
|
|
1595
1595
|
</svg>
|
|
1596
1596
|
`;
|
|
1597
|
-
class
|
|
1597
|
+
class pt extends w {
|
|
1598
1598
|
constructor(t = {}) {
|
|
1599
1599
|
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();
|
|
1600
1600
|
}
|
|
@@ -1647,7 +1647,7 @@ class ht extends b {
|
|
|
1647
1647
|
);
|
|
1648
1648
|
if (t && t !== "") {
|
|
1649
1649
|
this.showLoading(), s && s instanceof HTMLElement && (s.style.display = "none"), e && e.classList.remove("no-image"), i && (i.innerHTML = `
|
|
1650
|
-
<span class="upload-icon">${
|
|
1650
|
+
<span class="upload-icon">${Y}</span>
|
|
1651
1651
|
<span class="upload-label">Replace</span>
|
|
1652
1652
|
`);
|
|
1653
1653
|
const n = () => {
|
|
@@ -1658,7 +1658,7 @@ class ht extends b {
|
|
|
1658
1658
|
this.previewEl.addEventListener("load", n), this.previewEl.addEventListener("error", o), this.previewEl.src = t;
|
|
1659
1659
|
} else
|
|
1660
1660
|
this.hideLoading(), this.previewWrapper.classList.remove("has-image"), this.previewEl.src = "", this.previewEl.style.display = "none", this.previewWrapper.style.display = "none", s && s instanceof HTMLElement && (s.style.display = "block"), e && e.classList.add("no-image"), i && (i.innerHTML = `
|
|
1661
|
-
<span class="upload-icon">${
|
|
1661
|
+
<span class="upload-icon">${Y}</span>
|
|
1662
1662
|
<span class="upload-label">Upload</span>
|
|
1663
1663
|
`);
|
|
1664
1664
|
}
|
|
@@ -1701,7 +1701,7 @@ class ht extends b {
|
|
|
1701
1701
|
this.previewWrapper.appendChild(this.previewEl);
|
|
1702
1702
|
const o = document.createElement("button");
|
|
1703
1703
|
return o.className = "upload-button", this.getDataPropsPath() && o.setAttribute("data-test-id", this.getDataPropsPath()), o.innerHTML = `
|
|
1704
|
-
<span class="upload-icon">${
|
|
1704
|
+
<span class="upload-icon">${Y}</span>
|
|
1705
1705
|
<span class="upload-label">Upload</span>
|
|
1706
1706
|
`, i.appendChild(n), i.appendChild(this.previewWrapper), i.appendChild(o), t.appendChild(i), s ? this.updatePreviewState(this.value) : this.updatePreviewState(null), o.onclick = () => {
|
|
1707
1707
|
window.postMessage(
|
|
@@ -1760,7 +1760,7 @@ const At = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewB
|
|
|
1760
1760
|
<polyline points="6 9 12 15 18 9"></polyline>
|
|
1761
1761
|
</svg>
|
|
1762
1762
|
`;
|
|
1763
|
-
class ue extends
|
|
1763
|
+
class ue extends w {
|
|
1764
1764
|
constructor(t = {}) {
|
|
1765
1765
|
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) {
|
|
1766
1766
|
const e = this._options.findIndex(
|
|
@@ -1907,7 +1907,7 @@ class ue extends b {
|
|
|
1907
1907
|
), this.updateButtonText();
|
|
1908
1908
|
}
|
|
1909
1909
|
}
|
|
1910
|
-
class ge extends
|
|
1910
|
+
class ge extends w {
|
|
1911
1911
|
constructor(t) {
|
|
1912
1912
|
var e, i;
|
|
1913
1913
|
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;
|
|
@@ -1960,7 +1960,7 @@ class ge extends b {
|
|
|
1960
1960
|
const Dt = `<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
1961
1961
|
<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"/>
|
|
1962
1962
|
</svg>`;
|
|
1963
|
-
class me extends
|
|
1963
|
+
class me extends w {
|
|
1964
1964
|
// Store mobile value
|
|
1965
1965
|
constructor(t = {}) {
|
|
1966
1966
|
t.rowGap = t.rowGap ?? !0, t.columnGap = t.columnGap ?? !0, t.title = t.title ?? "Gap", t.icon = t.icon ?? Dt, 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);
|
|
@@ -2047,9 +2047,9 @@ class ve extends I {
|
|
|
2047
2047
|
}), this.inputType = "number";
|
|
2048
2048
|
}
|
|
2049
2049
|
}
|
|
2050
|
-
class Ce extends
|
|
2050
|
+
class Ce extends w {
|
|
2051
2051
|
constructor(t) {
|
|
2052
|
-
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(
|
|
2052
|
+
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(w.DefaultLanguage) ? w.DefaultLanguage : t.languages[0];
|
|
2053
2053
|
const e = t.defaultValue || `Enter text in ${this.capitalizeFirstLetter(this.defaultLanguage)}`;
|
|
2054
2054
|
t.languages.forEach((i) => {
|
|
2055
2055
|
var s, n;
|
|
@@ -2080,13 +2080,13 @@ class Ce extends b {
|
|
|
2080
2080
|
return;
|
|
2081
2081
|
}
|
|
2082
2082
|
const h = "...";
|
|
2083
|
-
let p = 0, d = e.length,
|
|
2083
|
+
let p = 0, d = e.length, u = 0;
|
|
2084
2084
|
for (; p <= d; ) {
|
|
2085
2085
|
const m = Math.floor((p + d) / 2), f = e.slice(0, m).trimEnd() + h;
|
|
2086
|
-
this.measureTextWidth(f, i) <= l ? (
|
|
2086
|
+
this.measureTextWidth(f, i) <= l ? (u = m, p = m + 1) : d = m - 1;
|
|
2087
2087
|
}
|
|
2088
|
-
const
|
|
2089
|
-
t.placeholder =
|
|
2088
|
+
const g = e.slice(0, u).trimEnd() + h;
|
|
2089
|
+
t.placeholder = g;
|
|
2090
2090
|
}
|
|
2091
2091
|
autosizeTextarea(t, e = 3) {
|
|
2092
2092
|
t.style.height = "auto";
|
|
@@ -2098,7 +2098,7 @@ class Ce extends b {
|
|
|
2098
2098
|
i.classList.add("simple-multi-language-row");
|
|
2099
2099
|
const s = document.createElement("label");
|
|
2100
2100
|
if (s.classList.add("simple-language-label"), s.textContent = t.toUpperCase(), s.setAttribute("for", `textarea-${t}`), i.appendChild(s), this.props.multiImg) {
|
|
2101
|
-
const n = new
|
|
2101
|
+
const n = new pt({
|
|
2102
2102
|
defaultUrl: e || "",
|
|
2103
2103
|
title: "",
|
|
2104
2104
|
id: `${this.id}_upload_${t}`
|
|
@@ -2194,7 +2194,7 @@ class Ce extends b {
|
|
|
2194
2194
|
});
|
|
2195
2195
|
}
|
|
2196
2196
|
}
|
|
2197
|
-
class ye extends
|
|
2197
|
+
class ye extends w {
|
|
2198
2198
|
constructor(t = {}) {
|
|
2199
2199
|
super(t), this.inputType = "select";
|
|
2200
2200
|
const e = [
|
|
@@ -2230,42 +2230,42 @@ const Ut = (c, t) => {
|
|
|
2230
2230
|
n = p.left, o = p.top, document.addEventListener("mousemove", l), document.addEventListener("mouseup", r), document.body.style.userSelect = "none";
|
|
2231
2231
|
}, l = (h) => {
|
|
2232
2232
|
if (!e) return;
|
|
2233
|
-
const p = h.clientX - i, d = h.clientY - s,
|
|
2234
|
-
let C = n + p,
|
|
2235
|
-
C = Math.max(8, Math.min(
|
|
2233
|
+
const p = h.clientX - i, d = h.clientY - s, u = window.innerWidth, g = window.innerHeight, m = t.offsetWidth, f = t.offsetHeight;
|
|
2234
|
+
let C = n + p, y = o + d;
|
|
2235
|
+
C = Math.max(8, Math.min(u - m - 8, C)), y = Math.max(8, Math.min(g - f - 8, y)), t.style.left = `${C}px`, t.style.top = `${y}px`;
|
|
2236
2236
|
}, r = () => {
|
|
2237
2237
|
e = !1, document.removeEventListener("mousemove", l), document.removeEventListener("mouseup", r), document.body.style.userSelect = "";
|
|
2238
2238
|
};
|
|
2239
2239
|
c.addEventListener("mousedown", a);
|
|
2240
|
-
},
|
|
2240
|
+
}, U = (c) => {
|
|
2241
2241
|
if (!c) return null;
|
|
2242
2242
|
let t = c.trim();
|
|
2243
2243
|
return !t.startsWith("#") || (t = t.slice(1), t.length === 3 && (t = t.split("").map((e) => e + e).join("")), !/^[0-9a-fA-F]{6}$/.test(t)) ? null : `#${t.toUpperCase()}`;
|
|
2244
|
-
},
|
|
2244
|
+
}, F = (c, t, e) => `#${[c, t, e].map((i) => Math.max(0, Math.min(255, i)).toString(16).padStart(2, "0")).join("")}`, S = (c) => {
|
|
2245
2245
|
const t = c.replace("#", ""), e = t.length === 3 ? t.split("").map((i) => i + i).join("") : t;
|
|
2246
2246
|
return {
|
|
2247
2247
|
r: parseInt(e.slice(0, 2), 16),
|
|
2248
2248
|
g: parseInt(e.slice(2, 4), 16),
|
|
2249
2249
|
b: parseInt(e.slice(4, 6), 16)
|
|
2250
2250
|
};
|
|
2251
|
-
},
|
|
2251
|
+
}, $ = (c) => {
|
|
2252
2252
|
const { r: t, g: e, b: i } = S(c), s = t / 255, n = e / 255, o = i / 255, a = Math.max(s, n, o), l = Math.min(s, n, o), r = a - l;
|
|
2253
2253
|
let h = 0;
|
|
2254
2254
|
r !== 0 && (a === s ? h = (n - o) / r % 6 : a === n ? h = (o - s) / r + 2 : h = (s - n) / r + 4), h < 0 && (h += 6);
|
|
2255
2255
|
const p = a === 0 ? 0 : r / a, d = a;
|
|
2256
2256
|
return { h: h * 60, s: p, v: d };
|
|
2257
|
-
},
|
|
2257
|
+
}, W = (c, t, e) => {
|
|
2258
2258
|
const i = (c % 360 + 360) % 360, s = e * t, n = s * (1 - Math.abs(i / 60 % 2 - 1)), o = e - s;
|
|
2259
2259
|
let a = 0, l = 0, r = 0;
|
|
2260
|
-
return i < 60 ? (a = s, l = n, r = 0) : i < 120 ? (a = n, l = s, r = 0) : i < 180 ? (a = 0, l = s, r = n) : i < 240 ? (a = 0, l = n, r = s) : i < 300 ? (a = n, l = 0, r = s) : (a = s, l = 0, r = n),
|
|
2260
|
+
return i < 60 ? (a = s, l = n, r = 0) : i < 120 ? (a = n, l = s, r = 0) : i < 180 ? (a = 0, l = s, r = n) : i < 240 ? (a = 0, l = n, r = s) : i < 300 ? (a = n, l = 0, r = s) : (a = s, l = 0, r = n), F(
|
|
2261
2261
|
Math.round((a + o) * 255),
|
|
2262
2262
|
Math.round((l + o) * 255),
|
|
2263
2263
|
Math.round((r + o) * 255)
|
|
2264
2264
|
);
|
|
2265
|
-
},
|
|
2265
|
+
}, Gt = (c, t, e) => {
|
|
2266
2266
|
const i = e * (1 - t / 2), s = i === 0 || i === 1 ? 0 : (e - i) / Math.min(i, 1 - i);
|
|
2267
2267
|
return { hue: c, sat: s, lightness: i };
|
|
2268
|
-
},
|
|
2268
|
+
}, Z = (c, t, e) => {
|
|
2269
2269
|
const i = (1 - Math.abs(2 * e - 1)) * t, s = i * (1 - Math.abs(c / 60 % 2 - 1)), n = e - i / 2;
|
|
2270
2270
|
let o = 0, a = 0, l = 0;
|
|
2271
2271
|
return c < 60 ? (o = i, a = s, l = 0) : c < 120 ? (o = s, a = i, l = 0) : c < 180 ? (o = 0, a = i, l = s) : c < 240 ? (o = 0, a = s, l = i) : c < 300 ? (o = s, a = 0, l = i) : (o = i, a = 0, l = s), {
|
|
@@ -2273,7 +2273,7 @@ const Ut = (c, t) => {
|
|
|
2273
2273
|
g: Math.round((a + n) * 255),
|
|
2274
2274
|
b: Math.round((l + n) * 255)
|
|
2275
2275
|
};
|
|
2276
|
-
},
|
|
2276
|
+
}, dt = (c, t) => {
|
|
2277
2277
|
const e = Math.max(0, Math.min(100, t)) / 100;
|
|
2278
2278
|
if (c.startsWith("#")) {
|
|
2279
2279
|
const { r: s, g: n, b: o } = S(c);
|
|
@@ -2286,7 +2286,7 @@ const Ut = (c, t) => {
|
|
|
2286
2286
|
if (c.startsWith("hsl(")) {
|
|
2287
2287
|
const s = c.match(/hsl\((\d+),\s*(\d+)%,\s*(\d+)%\)/);
|
|
2288
2288
|
if (s) {
|
|
2289
|
-
const { r: n, g: o, b: a } =
|
|
2289
|
+
const { r: n, g: o, b: a } = Z(
|
|
2290
2290
|
parseInt(s[1]),
|
|
2291
2291
|
parseInt(s[2]) / 100,
|
|
2292
2292
|
parseInt(s[3]) / 100
|
|
@@ -2297,7 +2297,7 @@ const Ut = (c, t) => {
|
|
|
2297
2297
|
if (c.startsWith("hsla(")) {
|
|
2298
2298
|
const s = c.match(/hsla\((\d+),\s*(\d+)%,\s*(\d+)%,\s*[\d.]+\)/);
|
|
2299
2299
|
if (s) {
|
|
2300
|
-
const { r: n, g: o, b: a } =
|
|
2300
|
+
const { r: n, g: o, b: a } = Z(
|
|
2301
2301
|
parseInt(s[1]),
|
|
2302
2302
|
parseInt(s[2]) / 100,
|
|
2303
2303
|
parseInt(s[3]) / 100
|
|
@@ -2305,13 +2305,13 @@ const Ut = (c, t) => {
|
|
|
2305
2305
|
return `rgba(${n}, ${o}, ${a}, ${e})`;
|
|
2306
2306
|
}
|
|
2307
2307
|
}
|
|
2308
|
-
const i =
|
|
2308
|
+
const i = U(c);
|
|
2309
2309
|
if (i) {
|
|
2310
2310
|
const { r: s, g: n, b: o } = S(i);
|
|
2311
2311
|
return `rgba(${s}, ${n}, ${o}, ${e})`;
|
|
2312
2312
|
}
|
|
2313
2313
|
return c;
|
|
2314
|
-
},
|
|
2314
|
+
}, zt = (c) => [
|
|
2315
2315
|
"red",
|
|
2316
2316
|
"green",
|
|
2317
2317
|
"blue",
|
|
@@ -2335,22 +2335,22 @@ const Ut = (c, t) => {
|
|
|
2335
2335
|
"teal",
|
|
2336
2336
|
"fuchsia",
|
|
2337
2337
|
"transparent"
|
|
2338
|
-
].includes(c.toLowerCase()),
|
|
2338
|
+
].includes(c.toLowerCase()), ut = (c) => [
|
|
2339
2339
|
/^#[0-9a-fA-F]{3,8}$/,
|
|
2340
2340
|
/^rgba?\s*\([^)]+\)$/,
|
|
2341
2341
|
/^hsla?\s*\([^)]+\)$/,
|
|
2342
2342
|
/^[a-zA-Z]+$/
|
|
2343
2343
|
].some((e) => e.test(c.trim())), Wt = (c) => {
|
|
2344
2344
|
if (typeof document > "u")
|
|
2345
|
-
return
|
|
2345
|
+
return ut(c) || !!U(c);
|
|
2346
2346
|
const t = document.createElement("div");
|
|
2347
2347
|
return t.style.color = c, t.style.color !== "";
|
|
2348
|
-
},
|
|
2348
|
+
}, gt = (c) => {
|
|
2349
2349
|
const t = c.trim();
|
|
2350
2350
|
if (/^#[0-9A-Fa-f]{8}$/.test(t)) {
|
|
2351
2351
|
const n = t.slice(1), o = parseInt(n.slice(0, 2), 16), a = parseInt(n.slice(2, 4), 16), l = parseInt(n.slice(4, 6), 16), r = parseInt(n.slice(6, 8), 16);
|
|
2352
2352
|
return {
|
|
2353
|
-
color:
|
|
2353
|
+
color: F(o, a, l),
|
|
2354
2354
|
position: 0,
|
|
2355
2355
|
opacity: Math.round(r / 255 * 100)
|
|
2356
2356
|
};
|
|
@@ -2361,7 +2361,7 @@ const Ut = (c, t) => {
|
|
|
2361
2361
|
if (e) {
|
|
2362
2362
|
const n = parseInt(e[1]), o = parseInt(e[2]), a = parseInt(e[3]), l = e[4] ? parseFloat(e[4]) : 1;
|
|
2363
2363
|
return {
|
|
2364
|
-
color:
|
|
2364
|
+
color: F(n, o, a),
|
|
2365
2365
|
position: 0,
|
|
2366
2366
|
opacity: Math.round(l * 100)
|
|
2367
2367
|
};
|
|
@@ -2370,27 +2370,135 @@ const Ut = (c, t) => {
|
|
|
2370
2370
|
/hsla?\s*\(\s*([\d.]+)\s*,\s*([\d.]+)%\s*,\s*([\d.]+)%(?:\s*,\s*([\d.]+))?\s*\)/
|
|
2371
2371
|
);
|
|
2372
2372
|
if (i) {
|
|
2373
|
-
const { r: n, g: o, b: a } =
|
|
2373
|
+
const { r: n, g: o, b: a } = Z(
|
|
2374
2374
|
parseFloat(i[1]),
|
|
2375
2375
|
parseFloat(i[2]) / 100,
|
|
2376
2376
|
parseFloat(i[3]) / 100
|
|
2377
2377
|
), l = i[4] ? parseFloat(i[4]) : 1;
|
|
2378
2378
|
return {
|
|
2379
|
-
color:
|
|
2379
|
+
color: F(n, o, a),
|
|
2380
2380
|
position: 0,
|
|
2381
2381
|
opacity: Math.round(l * 100)
|
|
2382
2382
|
};
|
|
2383
2383
|
}
|
|
2384
|
-
return { color:
|
|
2385
|
-
},
|
|
2384
|
+
return { color: U(t) || t, position: 0, opacity: 100 };
|
|
2385
|
+
}, at = (c) => {
|
|
2386
|
+
const t = [];
|
|
2387
|
+
let e = "", i = 0;
|
|
2388
|
+
for (let s = 0; s < c.length; s++) {
|
|
2389
|
+
const n = c[s];
|
|
2390
|
+
if (n === "(") i++;
|
|
2391
|
+
else if (n === ")") i--;
|
|
2392
|
+
else if (n === "," && i === 0) {
|
|
2393
|
+
t.push(e.trim()), e = "";
|
|
2394
|
+
continue;
|
|
2395
|
+
}
|
|
2396
|
+
e += n;
|
|
2397
|
+
}
|
|
2398
|
+
return e.trim() && t.push(e.trim()), t;
|
|
2399
|
+
}, lt = (c, t) => {
|
|
2400
|
+
const e = new RegExp(`${t}\\s*\\(`, "i"), i = c.match(e);
|
|
2401
|
+
if (!i) return null;
|
|
2402
|
+
const s = i.index + i[0].length;
|
|
2403
|
+
let n = 1, o = s;
|
|
2404
|
+
for (let a = s; a < c.length && n > 0; a++)
|
|
2405
|
+
c[a] === "(" ? n++ : c[a] === ")" && n--, o = a;
|
|
2406
|
+
return n === 0 ? c.substring(s, o) : null;
|
|
2407
|
+
}, qt = (c) => {
|
|
2408
|
+
const t = c.split(" ")[0].toLowerCase();
|
|
2409
|
+
return [
|
|
2410
|
+
"circle",
|
|
2411
|
+
"ellipse",
|
|
2412
|
+
"closest-side",
|
|
2413
|
+
"closest-corner",
|
|
2414
|
+
"farthest-side",
|
|
2415
|
+
"farthest-corner",
|
|
2416
|
+
"at",
|
|
2417
|
+
"contain",
|
|
2418
|
+
"cover"
|
|
2419
|
+
].includes(t) ? !1 : /^#[0-9a-f]{3,8}$/i.test(t) || /^rgb/i.test(c) || /^hsl/i.test(c) || zt(t);
|
|
2420
|
+
}, rt = (c) => {
|
|
2421
|
+
const t = [];
|
|
2422
|
+
return c.forEach((e, i) => {
|
|
2423
|
+
const s = e.trim();
|
|
2424
|
+
if (!s) return;
|
|
2425
|
+
let n = "", o = 0;
|
|
2426
|
+
const a = s.match(/^(.+?)\s+(\d+(?:\.\d+)?)%?\s*$/);
|
|
2427
|
+
a && ut(a[1].trim()) ? (n = a[1].trim(), o = parseFloat(a[2])) : (n = s, o = c.length === 1 ? 0 : i / (c.length - 1) * 100);
|
|
2428
|
+
const l = gt(n);
|
|
2429
|
+
l.position = Math.max(0, Math.min(100, Math.round(o))), t.push(l);
|
|
2430
|
+
}), t;
|
|
2431
|
+
}, A = (c) => {
|
|
2432
|
+
const t = c.stops && c.stops.length ? c.stops : [{ color: "#000000", position: 0, opacity: 100 }];
|
|
2433
|
+
return {
|
|
2434
|
+
type: c.type && ["linear", "radial", "solid"].includes(c.type) ? c.type : "linear",
|
|
2435
|
+
angle: typeof c.angle == "number" ? c.angle : 90,
|
|
2436
|
+
stops: t.map((e, i) => ({
|
|
2437
|
+
color: e.color || "#000000",
|
|
2438
|
+
position: typeof e.position == "number" ? e.position : t.length === 1 ? 0 : Math.round(i / (t.length - 1) * 100),
|
|
2439
|
+
opacity: e.opacity === void 0 || Number.isNaN(e.opacity) ? 100 : e.opacity
|
|
2440
|
+
}))
|
|
2441
|
+
};
|
|
2442
|
+
}, H = (c) => {
|
|
2443
|
+
const t = c.replace(/;$/, "").trim();
|
|
2444
|
+
if (Wt(t)) {
|
|
2445
|
+
const s = gt(t);
|
|
2446
|
+
return A({ type: "solid", angle: 0, stops: [s] });
|
|
2447
|
+
}
|
|
2448
|
+
const e = lt(t, "linear-gradient");
|
|
2449
|
+
if (e) {
|
|
2450
|
+
const s = at(e);
|
|
2451
|
+
let n = 90, o = s;
|
|
2452
|
+
const a = s[0];
|
|
2453
|
+
if (a.includes("deg")) {
|
|
2454
|
+
const r = a.match(/(-?\d+(?:\.\d+)?)deg/);
|
|
2455
|
+
r && (n = parseFloat(r[1]), o = s.slice(1));
|
|
2456
|
+
} else a.includes("to ") && (n = {
|
|
2457
|
+
"to right": 90,
|
|
2458
|
+
"to left": 270,
|
|
2459
|
+
"to bottom": 180,
|
|
2460
|
+
"to top": 0,
|
|
2461
|
+
"to bottom right": 135,
|
|
2462
|
+
"to bottom left": 225,
|
|
2463
|
+
"to top right": 45,
|
|
2464
|
+
"to top left": 315
|
|
2465
|
+
}[a] ?? 90, o = s.slice(1));
|
|
2466
|
+
const l = rt(o);
|
|
2467
|
+
return l.length ? A({ type: "linear", angle: n, stops: l }) : null;
|
|
2468
|
+
}
|
|
2469
|
+
const i = lt(t, "radial-gradient");
|
|
2470
|
+
if (i) {
|
|
2471
|
+
const s = at(i), n = s[0] && !qt(s[0]) ? s.slice(1) : s, o = rt(n);
|
|
2472
|
+
return o.length ? A({ type: "radial", angle: 0, stops: o }) : null;
|
|
2473
|
+
}
|
|
2474
|
+
return null;
|
|
2475
|
+
}, N = (c) => {
|
|
2476
|
+
if (c.type === "solid") {
|
|
2477
|
+
const e = c.stops[0], i = e.opacity ?? 100, s = e.color.replace("#", ""), n = Math.round(i / 100 * 255).toString(16).toUpperCase().padStart(2, "0");
|
|
2478
|
+
return `#${s}${n}`;
|
|
2479
|
+
}
|
|
2480
|
+
const t = c.stops.map(
|
|
2481
|
+
(e) => `${dt(e.color, e.opacity ?? 100)} ${e.position}%`
|
|
2482
|
+
).join(", ");
|
|
2483
|
+
return c.type === "radial" ? `radial-gradient(circle, ${t})` : `linear-gradient(${c.angle}deg, ${t})`;
|
|
2484
|
+
}, Q = (c) => {
|
|
2485
|
+
if (c.type === "solid") {
|
|
2486
|
+
const t = c.stops[0];
|
|
2487
|
+
return t ? t.color.replace("#", "").toUpperCase() : "Color";
|
|
2488
|
+
}
|
|
2489
|
+
return c.type === "linear" ? `Linear ${c.angle}°` : "Radial Gradient";
|
|
2490
|
+
}, q = class q {
|
|
2386
2491
|
static defaults() {
|
|
2387
|
-
return
|
|
2492
|
+
return {
|
|
2493
|
+
solid: [],
|
|
2494
|
+
gradient: []
|
|
2495
|
+
};
|
|
2388
2496
|
}
|
|
2389
2497
|
static normalizeList(t) {
|
|
2390
2498
|
const e = /* @__PURE__ */ new Set(), i = [];
|
|
2391
2499
|
return t.forEach((s) => {
|
|
2392
|
-
|
|
2393
|
-
n && (e.has(n) || (e.add(n), i.push(n)));
|
|
2500
|
+
let n = U(s);
|
|
2501
|
+
n || H(s) && (n = s), n && (e.has(n) || (e.add(n), i.push(n)));
|
|
2394
2502
|
}), i.slice(0, this.MAX_COLORS);
|
|
2395
2503
|
}
|
|
2396
2504
|
static ensureLoaded() {
|
|
@@ -2401,13 +2509,10 @@ const Ut = (c, t) => {
|
|
|
2401
2509
|
if (!e) return;
|
|
2402
2510
|
const i = JSON.parse(e);
|
|
2403
2511
|
if (Array.isArray(i))
|
|
2404
|
-
this.colors = this.normalizeList(i);
|
|
2512
|
+
this.colors.solid = this.normalizeList(i);
|
|
2405
2513
|
else if (i && typeof i == "object") {
|
|
2406
|
-
const s =
|
|
2407
|
-
|
|
2408
|
-
const o = i, a = Array.isArray(o[n]) ? o[n] : [];
|
|
2409
|
-
s.push(...a);
|
|
2410
|
-
}), this.colors = this.normalizeList(s);
|
|
2514
|
+
const s = i;
|
|
2515
|
+
s.solid && (this.colors.solid = this.normalizeList(s.solid)), s.gradient && (this.colors.gradient = this.normalizeList(s.gradient));
|
|
2411
2516
|
}
|
|
2412
2517
|
} catch {
|
|
2413
2518
|
this.colors = this.defaults();
|
|
@@ -2425,21 +2530,32 @@ const Ut = (c, t) => {
|
|
|
2425
2530
|
}
|
|
2426
2531
|
}
|
|
2427
2532
|
static list(t) {
|
|
2428
|
-
return this.ensureLoaded(), this.colors || (this.colors = this.defaults()), this.colors;
|
|
2533
|
+
return this.ensureLoaded(), this.colors || (this.colors = this.defaults()), this.colors[t];
|
|
2429
2534
|
}
|
|
2430
2535
|
static getColors(t) {
|
|
2536
|
+
if (t === "all") {
|
|
2537
|
+
const e = this.list("solid"), i = this.list("gradient"), s = [...e, ...i];
|
|
2538
|
+
return this.normalizeList(s);
|
|
2539
|
+
}
|
|
2431
2540
|
return [...this.list(t)];
|
|
2432
2541
|
}
|
|
2433
2542
|
static addColor(t, e) {
|
|
2434
|
-
|
|
2543
|
+
if (!t) return;
|
|
2544
|
+
let i = U(t), s = "solid";
|
|
2545
|
+
if (i)
|
|
2546
|
+
s = "solid";
|
|
2547
|
+
else {
|
|
2548
|
+
const l = H(t);
|
|
2549
|
+
l && (i = t, s = l.type === "solid" ? "solid" : "gradient");
|
|
2550
|
+
}
|
|
2435
2551
|
if (!i) return;
|
|
2436
|
-
const s = this.list(
|
|
2437
|
-
|
|
2552
|
+
const n = e === "all" ? s : e, o = this.list(n), a = o.indexOf(i);
|
|
2553
|
+
a !== -1 && o.splice(a, 1), o.unshift(i), o.length > this.MAX_COLORS && (o.length = this.MAX_COLORS), this.persist();
|
|
2438
2554
|
}
|
|
2439
2555
|
};
|
|
2440
|
-
|
|
2441
|
-
let
|
|
2442
|
-
const
|
|
2556
|
+
q.STORAGE_KEY = "settingsLib_recentColors", q.MAX_COLORS = 12, q.colors = null;
|
|
2557
|
+
let B = q;
|
|
2558
|
+
const it = (c, t) => {
|
|
2443
2559
|
const e = document.createElement("div");
|
|
2444
2560
|
e.className = "color-picker-recent-section";
|
|
2445
2561
|
const i = document.createElement("div");
|
|
@@ -2450,7 +2566,7 @@ const gt = (c, t) => {
|
|
|
2450
2566
|
n.className = "color-picker-recent-placeholder", n.textContent = "No recent colors yet", e.appendChild(i), e.appendChild(s), e.appendChild(n);
|
|
2451
2567
|
const o = () => {
|
|
2452
2568
|
s.innerHTML = "";
|
|
2453
|
-
const a =
|
|
2569
|
+
const a = B.getColors(t);
|
|
2454
2570
|
if (a.length === 0) {
|
|
2455
2571
|
s.style.display = "none", n.style.display = "block";
|
|
2456
2572
|
return;
|
|
@@ -2465,16 +2581,16 @@ const gt = (c, t) => {
|
|
|
2465
2581
|
<path fill-rule="evenodd" clip-rule="evenodd"
|
|
2466
2582
|
d="M6.12347 4.96653L1.41158 0.254304C1.25449 0.102568 1.04409 0.0186071 0.825694 0.0205049C0.607302 0.0224037 0.398393 0.110007 0.24396 0.26445C0.0895282 0.418893 0.0019303 0.627818 3.24698e-05 0.846225C-0.00186536 1.06463 0.0820894 1.27505 0.233815 1.43215L4.9457 6.14438L0.233814 10.8566C0.0820886 11.0137 -0.00186625 11.2241 3.15434e-05 11.4425C0.00192934 11.6609 0.0895272 11.8699 0.243959 12.0243C0.398392 12.1787 0.607301 12.2663 0.825693 12.2682C1.04408 12.2701 1.25449 12.1862 1.41158 12.0344L6.12347 7.32222L10.8354 12.0344C10.9932 12.1824 11.2023 12.2632 11.4186 12.2597C11.6349 12.2562 11.8414 12.1687 11.9943 12.0156C12.1472 11.8626 12.2346 11.6561 12.2379 11.4398C12.2413 11.2234 12.1604 11.0143 12.0123 10.8566L7.30123 6.14438L12.0131 1.43215C12.0927 1.35531 12.1561 1.2634 12.1998 1.16177C12.2434 1.06014 12.2664 0.950833 12.2674 0.84023C12.2683 0.729626 12.2473 0.61994 12.2054 0.517568C12.1635 0.415196 12.1017 0.322191 12.0234 0.243979C11.9452 0.165768 11.8522 0.103916 11.7499 0.0620327C11.6475 0.0201492 11.5378 -0.000927989 11.4272 3.33052e-05C11.3166 0.000993646 11.2073 0.0239743 11.1057 0.0676297C11.0041 0.111286 10.9122 0.174745 10.8354 0.254305L6.12347 4.96653Z"
|
|
2467
2583
|
fill="#919EAB"/>
|
|
2468
|
-
</svg>`,
|
|
2584
|
+
</svg>`, jt = `<svg width="23" height="23" viewBox="0 0 23 23" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2469
2585
|
<path fill-rule="evenodd" clip-rule="evenodd"
|
|
2470
2586
|
d="M19.1972 3.29156C18.936 3.03034 18.6259 2.82313 18.2847 2.68176C17.9434 2.54039 17.5777 2.46763 17.2083 2.46763C16.8389 2.46763 16.4731 2.54039 16.1319 2.68176C15.7906 2.82313 15.4805 3.03034 15.2194 3.29156L13.7822 4.72875C13.2585 4.4772 12.6697 4.39449 12.097 4.49207C11.5243 4.58964 10.9961 4.86267 10.5853 5.27343L9.91687 5.94281C9.74268 6.11693 9.6045 6.32366 9.51023 6.5512C9.41595 6.77873 9.36743 7.02261 9.36743 7.2689C9.36743 7.5152 9.41595 7.75907 9.51023 7.98661C9.6045 8.21414 9.74268 8.42088 9.91687 8.595L3.83625 14.6747C3.57512 14.936 3.36803 15.2462 3.2268 15.5875C3.08556 15.9288 3.01296 16.2947 3.01312 16.6641V18.3516C3.01312 18.6499 3.13165 18.9361 3.34263 19.1471C3.55361 19.358 3.83975 19.4766 4.13812 19.4766H5.82562C6.57129 19.4759 7.28618 19.1792 7.81312 18.6516L13.8937 12.5728C14.0679 12.747 14.2746 12.8852 14.5021 12.9795C14.7297 13.0737 14.9735 13.1223 15.2198 13.1223C15.4661 13.1223 15.71 13.0737 15.9375 12.9795C16.1651 12.8852 16.3718 12.747 16.5459 12.5728L17.2153 11.9025C17.6261 11.4917 17.8991 10.9635 17.9967 10.3908C18.0942 9.81811 18.0115 9.22926 17.76 8.70562L19.1972 7.26937C19.4584 7.0082 19.6656 6.69813 19.807 6.35687C19.9484 6.01561 20.0211 5.64985 20.0211 5.28047C20.0211 4.91108 19.9484 4.54532 19.807 4.20406C19.6656 3.8628 19.4584 3.55273 19.1972 3.29156Z"
|
|
2471
2587
|
fill="#353C47"/>
|
|
2472
|
-
</svg>`,
|
|
2588
|
+
</svg>`, _t = `<svg width="15" height="17" viewBox="0 0 15 17" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2473
2589
|
<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"/>
|
|
2474
|
-
</svg>`,
|
|
2590
|
+
</svg>`, Jt = `<svg width="14" height="2" viewBox="0 0 14 2" fill="none" xmlns="http://www.w3.org/2000/svg">
|
|
2475
2591
|
<path d="M0.8 0.800003H12.4667" stroke="#919EAB" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round"/>
|
|
2476
2592
|
</svg>`;
|
|
2477
|
-
class
|
|
2593
|
+
class Xt {
|
|
2478
2594
|
constructor(t, e = "gradient") {
|
|
2479
2595
|
this.isOpen = !1, this.currentColor = "#FF0000", this.currentOpacity = 100, this.outsideClick = (i) => {
|
|
2480
2596
|
if (!this.isOpen) return;
|
|
@@ -2516,7 +2632,7 @@ class Jt {
|
|
|
2516
2632
|
const a = document.createElement("div");
|
|
2517
2633
|
a.className = "color-picker-hue-container";
|
|
2518
2634
|
const l = document.createElement("button");
|
|
2519
|
-
l.className = "color-picker-eyedropper", l.type = "button", l.innerHTML =
|
|
2635
|
+
l.className = "color-picker-eyedropper", l.type = "button", l.innerHTML = jt;
|
|
2520
2636
|
const r = document.createElement("div");
|
|
2521
2637
|
r.className = "color-picker-hue", this.hueSlider = r;
|
|
2522
2638
|
const h = document.createElement("div");
|
|
@@ -2525,27 +2641,27 @@ class Jt {
|
|
|
2525
2641
|
p.className = "color-picker-opacity", this.opacitySlider = p;
|
|
2526
2642
|
const d = document.createElement("div");
|
|
2527
2643
|
d.className = "color-picker-opacity-marker", this.opacityMarker = d, p.appendChild(d);
|
|
2528
|
-
const
|
|
2529
|
-
var
|
|
2530
|
-
this.setColor(
|
|
2644
|
+
const u = it((D) => {
|
|
2645
|
+
var G;
|
|
2646
|
+
this.setColor(D), (G = this.onChange) == null || G.call(this, D, this.currentOpacity);
|
|
2531
2647
|
}, this.recentScope);
|
|
2532
|
-
this.recentSectionRefresh =
|
|
2533
|
-
const
|
|
2534
|
-
|
|
2648
|
+
this.recentSectionRefresh = u.refresh;
|
|
2649
|
+
const g = document.createElement("div");
|
|
2650
|
+
g.className = "color-picker-format-section";
|
|
2535
2651
|
const m = document.createElement("select");
|
|
2536
2652
|
m.className = "color-picker-format-select", this.select = m;
|
|
2537
2653
|
const f = document.createElement("option");
|
|
2538
2654
|
f.value = "hex", f.textContent = "HEX";
|
|
2539
2655
|
const C = document.createElement("option");
|
|
2540
2656
|
C.value = "rgb", C.textContent = "RGB";
|
|
2541
|
-
const
|
|
2542
|
-
|
|
2543
|
-
const
|
|
2544
|
-
|
|
2545
|
-
const
|
|
2546
|
-
|
|
2657
|
+
const y = document.createElement("option");
|
|
2658
|
+
y.value = "hsl", y.textContent = "HSL", m.appendChild(f), m.appendChild(C), m.appendChild(y);
|
|
2659
|
+
const E = document.createElement("input");
|
|
2660
|
+
E.type = "text", E.className = "color-picker-color-input", E.value = this.currentColor, this.input = E;
|
|
2661
|
+
const O = document.createElement("div");
|
|
2662
|
+
O.className = "color-picker-input-container";
|
|
2547
2663
|
const k = document.createElement("button");
|
|
2548
|
-
return k.className = "color-picker-copy-inside", k.textContent = "Copy",
|
|
2664
|
+
return k.className = "color-picker-copy-inside", k.textContent = "Copy", O.appendChild(E), O.appendChild(k), g.appendChild(m), g.appendChild(O), t.appendChild(e), t.appendChild(n), t.appendChild(a), t.appendChild(p), t.appendChild(u.container), t.appendChild(g), t.addEventListener("click", (D) => D.stopPropagation()), this.bind(n, r, p, E, m, k, l), t;
|
|
2549
2665
|
}
|
|
2550
2666
|
createBackdrop() {
|
|
2551
2667
|
const t = document.createElement("div");
|
|
@@ -2555,41 +2671,41 @@ class Jt {
|
|
|
2555
2671
|
}
|
|
2556
2672
|
bind(t, e, i, s, n, o, a) {
|
|
2557
2673
|
const l = (p) => {
|
|
2558
|
-
var
|
|
2559
|
-
const d = t.getBoundingClientRect(),
|
|
2560
|
-
this.colorMarker.style.left = `${
|
|
2561
|
-
const f = this.parsePercentage(this.hueMarker.style.left || "0%") * 360, C =
|
|
2562
|
-
this.currentColor = C, this.syncInput(), this.updateOpacityBg(), (
|
|
2674
|
+
var y;
|
|
2675
|
+
const d = t.getBoundingClientRect(), u = Math.max(0, Math.min(1, (p.clientX - d.left) / d.width)), g = Math.max(0, Math.min(1, (p.clientY - d.top) / d.height));
|
|
2676
|
+
this.colorMarker.style.left = `${u * 100}%`, this.colorMarker.style.top = `${g * 100}%`;
|
|
2677
|
+
const f = this.parsePercentage(this.hueMarker.style.left || "0%") * 360, C = W(f, u, 1 - g);
|
|
2678
|
+
this.currentColor = C, this.syncInput(), this.updateOpacityBg(), (y = this.onChange) == null || y.call(this, C, this.currentOpacity);
|
|
2563
2679
|
}, r = (p) => {
|
|
2564
|
-
var
|
|
2680
|
+
var y;
|
|
2565
2681
|
const d = e.getBoundingClientRect();
|
|
2566
|
-
let
|
|
2567
|
-
this.hueMarker.style.left = `${
|
|
2568
|
-
const
|
|
2569
|
-
this.currentColor = C, this.colorArea.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${
|
|
2682
|
+
let u = Math.max(0, Math.min(1, (p.clientX - d.left) / d.width));
|
|
2683
|
+
this.hueMarker.style.left = `${u * 100}%`;
|
|
2684
|
+
const g = u * 360, m = this.parsePercentage(this.colorMarker.style.left || "0%"), f = this.parsePercentage(this.colorMarker.style.top || "0%"), C = W(g, m, 1 - f);
|
|
2685
|
+
this.currentColor = C, this.colorArea.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${g}, 100%, 50%))`, this.syncInput(), this.updateOpacityBg(), (y = this.onChange) == null || y.call(this, C, this.currentOpacity);
|
|
2570
2686
|
}, h = (p) => {
|
|
2571
|
-
var
|
|
2572
|
-
const d = i.getBoundingClientRect(),
|
|
2573
|
-
this.opacityMarker.style.left = `${
|
|
2687
|
+
var g;
|
|
2688
|
+
const d = i.getBoundingClientRect(), u = Math.max(0, Math.min(1, (p.clientX - d.left) / d.width));
|
|
2689
|
+
this.opacityMarker.style.left = `${u * 100}%`, this.currentOpacity = Math.round(u * 100), (g = this.onChange) == null || g.call(this, this.currentColor, this.currentOpacity);
|
|
2574
2690
|
};
|
|
2575
2691
|
t.addEventListener("mousedown", (p) => {
|
|
2576
2692
|
p.preventDefault(), l(p);
|
|
2577
|
-
const d = (
|
|
2578
|
-
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup",
|
|
2693
|
+
const d = (g) => l(g), u = () => {
|
|
2694
|
+
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup", u);
|
|
2579
2695
|
};
|
|
2580
|
-
document.addEventListener("mousemove", d), document.addEventListener("mouseup",
|
|
2696
|
+
document.addEventListener("mousemove", d), document.addEventListener("mouseup", u);
|
|
2581
2697
|
}), e.addEventListener("mousedown", (p) => {
|
|
2582
2698
|
p.preventDefault(), r(p);
|
|
2583
|
-
const d = (
|
|
2584
|
-
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup",
|
|
2699
|
+
const d = (g) => r(g), u = () => {
|
|
2700
|
+
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup", u);
|
|
2585
2701
|
};
|
|
2586
|
-
document.addEventListener("mousemove", d), document.addEventListener("mouseup",
|
|
2702
|
+
document.addEventListener("mousemove", d), document.addEventListener("mouseup", u);
|
|
2587
2703
|
}), i.addEventListener("mousedown", (p) => {
|
|
2588
2704
|
p.preventDefault(), h(p);
|
|
2589
|
-
const d = (
|
|
2590
|
-
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup",
|
|
2705
|
+
const d = (g) => h(g), u = () => {
|
|
2706
|
+
document.removeEventListener("mousemove", d), document.removeEventListener("mouseup", u);
|
|
2591
2707
|
};
|
|
2592
|
-
document.addEventListener("mousemove", d), document.addEventListener("mouseup",
|
|
2708
|
+
document.addEventListener("mousemove", d), document.addEventListener("mouseup", u);
|
|
2593
2709
|
}), n.addEventListener("change", () => this.syncInput()), s.addEventListener("input", () => this.applyFromInput()), s.addEventListener("blur", () => this.syncInput()), s.addEventListener("keydown", (p) => {
|
|
2594
2710
|
p.key === "Enter" && (p.preventDefault(), this.syncInput(), s.blur());
|
|
2595
2711
|
}), o.addEventListener("click", async () => {
|
|
@@ -2605,8 +2721,8 @@ class Jt {
|
|
|
2605
2721
|
return;
|
|
2606
2722
|
}
|
|
2607
2723
|
try {
|
|
2608
|
-
const d = new window.EyeDropper(), { sRGBHex:
|
|
2609
|
-
this.setColor(
|
|
2724
|
+
const d = new window.EyeDropper(), { sRGBHex: u } = await d.open();
|
|
2725
|
+
this.setColor(u), (p = this.onChange) == null || p.call(this, u, this.currentOpacity);
|
|
2610
2726
|
} catch {
|
|
2611
2727
|
}
|
|
2612
2728
|
}), document.addEventListener("keydown", this.keyDown, !0), setTimeout(
|
|
@@ -2617,17 +2733,17 @@ class Jt {
|
|
|
2617
2733
|
setColor(t) {
|
|
2618
2734
|
var o;
|
|
2619
2735
|
this.currentColor = t;
|
|
2620
|
-
const { h: e, s: i, v: s } =
|
|
2736
|
+
const { h: e, s: i, v: s } = $(t), n = e >= 360 ? e % 360 : e;
|
|
2621
2737
|
this.hueMarker.style.left = `${n / 360 * 100}%`, this.colorMarker.style.left = `${i * 100}%`, this.colorMarker.style.top = `${(1 - s) * 100}%`, this.colorArea.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${n}, 100%, 50%))`, this.syncInput(), this.updateOpacityBg(), (o = this.onChange) == null || o.call(this, t, this.currentOpacity);
|
|
2622
2738
|
}
|
|
2623
2739
|
syncInput() {
|
|
2624
|
-
const t = this.select.value, { h: e, s: i, v: s } =
|
|
2740
|
+
const t = this.select.value, { h: e, s: i, v: s } = $(this.currentColor);
|
|
2625
2741
|
if (t === "hex") this.input.value = this.currentColor;
|
|
2626
2742
|
else if (t === "rgb") {
|
|
2627
2743
|
const { r: n, g: o, b: a } = S(this.currentColor);
|
|
2628
2744
|
this.input.value = `rgb(${n}, ${o}, ${a})`;
|
|
2629
2745
|
} else {
|
|
2630
|
-
const { hue: n, sat: o, lightness: a } =
|
|
2746
|
+
const { hue: n, sat: o, lightness: a } = Gt(e, i, s);
|
|
2631
2747
|
this.input.value = `hsl(${Math.round(n)}, ${Math.round(
|
|
2632
2748
|
o * 100
|
|
2633
2749
|
)}%, ${Math.round(a * 100)}%)`;
|
|
@@ -2646,7 +2762,7 @@ class Jt {
|
|
|
2646
2762
|
const s = t.match(/hsl\((\d+),\s*(\d+)%,\s*(\d+)%\)/);
|
|
2647
2763
|
if (s) {
|
|
2648
2764
|
const n = parseInt(s[1]), o = parseInt(s[2]) / 100, a = parseInt(s[3]) / 100, l = a + o * Math.min(a, 1 - a), r = l === 0 ? 0 : 2 * (1 - a / l);
|
|
2649
|
-
e =
|
|
2765
|
+
e = W(n, r, l);
|
|
2650
2766
|
}
|
|
2651
2767
|
}
|
|
2652
2768
|
}
|
|
@@ -2660,28 +2776,28 @@ class Jt {
|
|
|
2660
2776
|
);
|
|
2661
2777
|
}
|
|
2662
2778
|
open(t, e, i) {
|
|
2663
|
-
var
|
|
2779
|
+
var E;
|
|
2664
2780
|
this.currentColor = t, this.currentOpacity = i ?? 100, this.syncInput();
|
|
2665
|
-
const { h: s, s: n, v: o } =
|
|
2666
|
-
this.hueMarker.style.left = `${s / 360 * 100}%`, this.colorMarker.style.left = `${n * 100}%`, this.colorMarker.style.top = `${(1 - o) * 100}%`, this.colorArea.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${s}, 100%, 50%))`, this.updateOpacityBg(), this.opacityMarker.style.left = `${this.currentOpacity}%`, (
|
|
2781
|
+
const { h: s, s: n, v: o } = $(t);
|
|
2782
|
+
this.hueMarker.style.left = `${s / 360 * 100}%`, this.colorMarker.style.left = `${n * 100}%`, this.colorMarker.style.top = `${(1 - o) * 100}%`, this.colorArea.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${s}, 100%, 50%))`, this.updateOpacityBg(), this.opacityMarker.style.left = `${this.currentOpacity}%`, (E = this.recentSectionRefresh) == null || E.call(this), this.isOpen = !0, this.backdrop.style.display = "block", this.backdrop.parentElement || document.body.appendChild(this.backdrop), this.element.style.display = "block", this.element.style.position = "fixed", this.element.style.zIndex = "10002", this.element.style.left = "-9999px", this.element.style.top = "0px", this.element.parentElement || document.body.appendChild(this.element);
|
|
2667
2783
|
const a = this.element.offsetWidth, l = this.element.offsetHeight, r = e.getBoundingClientRect(), h = window.innerWidth, p = window.innerHeight, d = 16;
|
|
2668
|
-
let
|
|
2784
|
+
let u = r.right + 8, g = r.top;
|
|
2669
2785
|
const m = h - r.right, f = r.left;
|
|
2670
|
-
m >= a + d ?
|
|
2671
|
-
const C = p - r.bottom,
|
|
2672
|
-
C >= l + d ?
|
|
2786
|
+
m >= a + d ? u = r.right + 8 : f >= a + d ? u = r.left - a - 8 : u = Math.max(d, (h - a) / 2);
|
|
2787
|
+
const C = p - r.bottom, y = r.top;
|
|
2788
|
+
C >= l + d ? g = r.bottom + 8 : y >= l + d ? g = r.top - l - 8 : C > y ? (g = r.bottom + 8, g + l > p - d && (g = p - l - d)) : (g = r.top - l - 8, g < d && (g = d)), this.element.style.left = `${u}px`, this.element.style.top = `${g}px`;
|
|
2673
2789
|
}
|
|
2674
2790
|
close(t) {
|
|
2675
2791
|
var e;
|
|
2676
|
-
this.isOpen && (this.isOpen = !1, this.backdrop.style.display = "none", this.element.style.display = "none", document.removeEventListener("click", this.outsideClick, !0), document.removeEventListener("keydown", this.keyDown, !0), t && (
|
|
2792
|
+
this.isOpen && (this.isOpen = !1, this.backdrop.style.display = "none", this.element.style.display = "none", document.removeEventListener("click", this.outsideClick, !0), document.removeEventListener("keydown", this.keyDown, !0), t && this.recentScope !== "gradient" && (B.addColor(this.currentColor, this.recentScope), (e = this.recentSectionRefresh) == null || e.call(this)));
|
|
2677
2793
|
}
|
|
2678
2794
|
getElement() {
|
|
2679
2795
|
return this.element;
|
|
2680
2796
|
}
|
|
2681
2797
|
}
|
|
2682
|
-
class
|
|
2798
|
+
class Zt {
|
|
2683
2799
|
constructor(t) {
|
|
2684
|
-
this.recentScope = "
|
|
2800
|
+
this.recentScope = "all", this.currentColor = t.initialColor, this.currentOpacity = t.initialOpacity, this.onColorChange = t.onColorChange, t.scope && (this.recentScope = t.scope), this.container = this.createContainer(), this.initializePicker();
|
|
2685
2801
|
}
|
|
2686
2802
|
createContainer() {
|
|
2687
2803
|
const t = document.createElement("div");
|
|
@@ -2714,7 +2830,7 @@ class Xt {
|
|
|
2714
2830
|
</div>
|
|
2715
2831
|
</div>
|
|
2716
2832
|
`;
|
|
2717
|
-
const e =
|
|
2833
|
+
const e = it((i) => {
|
|
2718
2834
|
this.applyRecentColor(i);
|
|
2719
2835
|
}, this.recentScope);
|
|
2720
2836
|
return this.recentSectionRefresh = e.refresh, t.appendChild(e.container), t;
|
|
@@ -2738,7 +2854,7 @@ class Xt {
|
|
|
2738
2854
|
".color-picker-color-input"
|
|
2739
2855
|
), r = this.container.querySelector(
|
|
2740
2856
|
".color-picker-copy-inside"
|
|
2741
|
-
), { h, s: p, v: d } =
|
|
2857
|
+
), { h, s: p, v: d } = $(this.currentColor);
|
|
2742
2858
|
s.style.left = `${h / 360 * 100}%`, e.style.left = `${p * 100}%`, e.style.top = `${(1 - d) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${h}, 100%, 50%))`, o.style.left = `${this.currentOpacity}%`, this.updateOpacityBackground(n), this.updateColorInput(a, l), this.setupColorAreaEvents(t, e, s), this.setupHueSliderEvents(
|
|
2743
2859
|
i,
|
|
2744
2860
|
s,
|
|
@@ -2766,7 +2882,7 @@ class Xt {
|
|
|
2766
2882
|
e.value = `rgb(${s.r}, ${s.g}, ${s.b})`;
|
|
2767
2883
|
break;
|
|
2768
2884
|
case "hsl":
|
|
2769
|
-
const { h: n, s: o, v: a } =
|
|
2885
|
+
const { h: n, s: o, v: a } = $(this.currentColor), l = a * (1 - o / 2), r = l === 0 || l === 1 ? 0 : (a - l) / Math.min(l, 1 - l);
|
|
2770
2886
|
e.value = `hsl(${Math.round(n)}, ${Math.round(
|
|
2771
2887
|
r * 100
|
|
2772
2888
|
)}%, ${Math.round(l * 100)}%)`;
|
|
@@ -2774,32 +2890,35 @@ class Xt {
|
|
|
2774
2890
|
}
|
|
2775
2891
|
}
|
|
2776
2892
|
applyRecentColor(t) {
|
|
2777
|
-
this.currentColor = t,
|
|
2778
|
-
|
|
2779
|
-
|
|
2780
|
-
|
|
2781
|
-
|
|
2782
|
-
|
|
2783
|
-
|
|
2893
|
+
if (this.currentColor = t, !(t.includes("gradient") || t.includes("radial"))) {
|
|
2894
|
+
this.updatePickerVisualState();
|
|
2895
|
+
const i = this.container.querySelector(
|
|
2896
|
+
".color-picker-format-select"
|
|
2897
|
+
), s = this.container.querySelector(
|
|
2898
|
+
".color-picker-color-input"
|
|
2899
|
+
);
|
|
2900
|
+
this.updateColorInput(i, s);
|
|
2901
|
+
}
|
|
2902
|
+
this.triggerChange();
|
|
2784
2903
|
}
|
|
2785
2904
|
commitRecentColor() {
|
|
2786
2905
|
var t;
|
|
2787
|
-
|
|
2906
|
+
B.addColor(this.currentColor, this.recentScope), (t = this.recentSectionRefresh) == null || t.call(this);
|
|
2788
2907
|
}
|
|
2789
2908
|
setupColorAreaEvents(t, e, i) {
|
|
2790
2909
|
const s = (n) => {
|
|
2791
2910
|
const o = t.getBoundingClientRect(), a = Math.max(0, Math.min(1, (n.clientX - o.left) / o.width)), l = Math.max(0, Math.min(1, (n.clientY - o.top) / o.height));
|
|
2792
2911
|
e.style.left = `${a * 100}%`, e.style.top = `${l * 100}%`;
|
|
2793
|
-
const r = parseFloat(i.style.left || "0%") / 100 * 360, h =
|
|
2912
|
+
const r = parseFloat(i.style.left || "0%") / 100 * 360, h = W(r, a, 1 - l);
|
|
2794
2913
|
this.currentColor = h;
|
|
2795
2914
|
const p = this.container.querySelector(
|
|
2796
2915
|
".color-picker-format-select"
|
|
2797
2916
|
), d = this.container.querySelector(
|
|
2798
2917
|
".color-picker-color-input"
|
|
2799
|
-
),
|
|
2918
|
+
), u = this.container.querySelector(
|
|
2800
2919
|
".color-picker-opacity"
|
|
2801
2920
|
);
|
|
2802
|
-
this.updateColorInput(p, d), this.updateOpacityBackground(
|
|
2921
|
+
this.updateColorInput(p, d), this.updateOpacityBackground(u), this.triggerChange();
|
|
2803
2922
|
};
|
|
2804
2923
|
t.addEventListener("mousedown", (n) => {
|
|
2805
2924
|
n.preventDefault(), s(n);
|
|
@@ -2814,9 +2933,9 @@ class Xt {
|
|
|
2814
2933
|
const h = t.getBoundingClientRect();
|
|
2815
2934
|
let p = (r.clientX - h.left) / h.width;
|
|
2816
2935
|
p = Math.max(0, Math.min(1, p)), e.style.left = `${p * 100}%`;
|
|
2817
|
-
const d = p * 360,
|
|
2936
|
+
const d = p * 360, u = parseFloat(s.style.left || "50%") / 100, g = parseFloat(s.style.top || "50%") / 100;
|
|
2818
2937
|
i.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${d}, 100%, 50%))`;
|
|
2819
|
-
const m =
|
|
2938
|
+
const m = W(d, u, 1 - g);
|
|
2820
2939
|
this.currentColor = m, this.updateColorInput(n, o), this.updateOpacityBackground(a), this.triggerChange();
|
|
2821
2940
|
};
|
|
2822
2941
|
t.addEventListener("mousedown", (r) => {
|
|
@@ -2871,7 +2990,7 @@ class Xt {
|
|
|
2871
2990
|
}
|
|
2872
2991
|
parseHexInput(t) {
|
|
2873
2992
|
const e = t.startsWith("#") ? t : `#${t}`;
|
|
2874
|
-
return
|
|
2993
|
+
return U(e);
|
|
2875
2994
|
}
|
|
2876
2995
|
parseRgbInput(t) {
|
|
2877
2996
|
const e = t.match(
|
|
@@ -2880,7 +2999,7 @@ class Xt {
|
|
|
2880
2999
|
if (e) {
|
|
2881
3000
|
const i = parseInt(e[1]), s = parseInt(e[2]), n = parseInt(e[3]);
|
|
2882
3001
|
if (i <= 255 && s <= 255 && n <= 255)
|
|
2883
|
-
return
|
|
3002
|
+
return F(i, s, n);
|
|
2884
3003
|
}
|
|
2885
3004
|
return null;
|
|
2886
3005
|
}
|
|
@@ -2891,8 +3010,8 @@ class Xt {
|
|
|
2891
3010
|
if (e) {
|
|
2892
3011
|
const i = parseFloat(e[1]), s = parseFloat(e[2]) / 100, n = parseFloat(e[3]) / 100;
|
|
2893
3012
|
if (i >= 0 && i <= 360 && s >= 0 && s <= 1 && n >= 0 && n <= 1) {
|
|
2894
|
-
const o =
|
|
2895
|
-
return
|
|
3013
|
+
const o = Z(i, s, n);
|
|
3014
|
+
return F(o.r, o.g, o.b);
|
|
2896
3015
|
}
|
|
2897
3016
|
}
|
|
2898
3017
|
return null;
|
|
@@ -2914,7 +3033,7 @@ class Xt {
|
|
|
2914
3033
|
".color-picker-hue-marker"
|
|
2915
3034
|
), s = this.container.querySelector(
|
|
2916
3035
|
".color-picker-opacity"
|
|
2917
|
-
), { h: n, s: o, v: a } =
|
|
3036
|
+
), { h: n, s: o, v: a } = $(this.currentColor);
|
|
2918
3037
|
i.style.left = `${n / 360 * 100}%`, e.style.left = `${o * 100}%`, e.style.top = `${(1 - a) * 100}%`, t.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${n}, 100%, 50%))`, this.updateOpacityBackground(s);
|
|
2919
3038
|
}
|
|
2920
3039
|
triggerChange() {
|
|
@@ -2939,116 +3058,11 @@ class Xt {
|
|
|
2939
3058
|
".color-picker-format-select"
|
|
2940
3059
|
), r = this.container.querySelector(
|
|
2941
3060
|
".color-picker-color-input"
|
|
2942
|
-
), { h, s: p, v: d } =
|
|
2943
|
-
n.style.left = `${
|
|
3061
|
+
), { h, s: p, v: d } = $(t), u = h >= 360 ? h % 360 : h;
|
|
3062
|
+
n.style.left = `${u / 360 * 100}%`, s.style.left = `${p * 100}%`, s.style.top = `${(1 - d) * 100}%`, i.style.background = `linear-gradient(to top, #000, transparent), linear-gradient(to right, #fff, hsl(${u}, 100%, 50%))`, o.style.left = `${e}%`, this.updateOpacityBackground(a), this.updateColorInput(l, r);
|
|
2944
3063
|
}
|
|
2945
3064
|
}
|
|
2946
|
-
const
|
|
2947
|
-
const t = [];
|
|
2948
|
-
let e = "", i = 0;
|
|
2949
|
-
for (let s = 0; s < c.length; s++) {
|
|
2950
|
-
const n = c[s];
|
|
2951
|
-
if (n === "(") i++;
|
|
2952
|
-
else if (n === ")") i--;
|
|
2953
|
-
else if (n === "," && i === 0) {
|
|
2954
|
-
t.push(e.trim()), e = "";
|
|
2955
|
-
continue;
|
|
2956
|
-
}
|
|
2957
|
-
e += n;
|
|
2958
|
-
}
|
|
2959
|
-
return e.trim() && t.push(e.trim()), t;
|
|
2960
|
-
}, at = (c, t) => {
|
|
2961
|
-
const e = new RegExp(`${t}\\s*\\(`, "i"), i = c.match(e);
|
|
2962
|
-
if (!i) return null;
|
|
2963
|
-
const s = i.index + i[0].length;
|
|
2964
|
-
let n = 1, o = s;
|
|
2965
|
-
for (let a = s; a < c.length && n > 0; a++)
|
|
2966
|
-
c[a] === "(" ? n++ : c[a] === ")" && n--, o = a;
|
|
2967
|
-
return n === 0 ? c.substring(s, o) : null;
|
|
2968
|
-
}, Zt = (c) => {
|
|
2969
|
-
const t = c.split(" ")[0].toLowerCase();
|
|
2970
|
-
return [
|
|
2971
|
-
"circle",
|
|
2972
|
-
"ellipse",
|
|
2973
|
-
"closest-side",
|
|
2974
|
-
"closest-corner",
|
|
2975
|
-
"farthest-side",
|
|
2976
|
-
"farthest-corner",
|
|
2977
|
-
"at",
|
|
2978
|
-
"contain",
|
|
2979
|
-
"cover"
|
|
2980
|
-
].includes(t) ? !1 : /^#[0-9a-f]{3,8}$/i.test(t) || /^rgb/i.test(c) || /^hsl/i.test(c) || Gt(t);
|
|
2981
|
-
}, lt = (c) => {
|
|
2982
|
-
const t = [];
|
|
2983
|
-
return c.forEach((e, i) => {
|
|
2984
|
-
const s = e.trim();
|
|
2985
|
-
if (!s) return;
|
|
2986
|
-
let n = "", o = 0;
|
|
2987
|
-
const a = s.match(/^(.+?)\s+(\d+(?:\.\d+)?)%?\s*$/);
|
|
2988
|
-
a && dt(a[1].trim()) ? (n = a[1].trim(), o = parseFloat(a[2])) : (n = s, o = c.length === 1 ? 0 : i / (c.length - 1) * 100);
|
|
2989
|
-
const l = ut(n);
|
|
2990
|
-
l.position = Math.max(0, Math.min(100, Math.round(o))), t.push(l);
|
|
2991
|
-
}), t;
|
|
2992
|
-
}, $ = (c) => {
|
|
2993
|
-
const t = c.stops && c.stops.length ? c.stops : [{ color: "#000000", position: 0, opacity: 100 }];
|
|
2994
|
-
return {
|
|
2995
|
-
type: c.type && ["linear", "radial", "solid"].includes(c.type) ? c.type : "linear",
|
|
2996
|
-
angle: typeof c.angle == "number" ? c.angle : 90,
|
|
2997
|
-
stops: t.map((e, i) => ({
|
|
2998
|
-
color: e.color || "#000000",
|
|
2999
|
-
position: typeof e.position == "number" ? e.position : t.length === 1 ? 0 : Math.round(i / (t.length - 1) * 100),
|
|
3000
|
-
opacity: e.opacity === void 0 || Number.isNaN(e.opacity) ? 100 : e.opacity
|
|
3001
|
-
}))
|
|
3002
|
-
};
|
|
3003
|
-
}, Y = (c) => {
|
|
3004
|
-
const t = c.replace(/;$/, "").trim();
|
|
3005
|
-
if (Wt(t)) {
|
|
3006
|
-
const s = ut(t);
|
|
3007
|
-
return $({ type: "solid", angle: 0, stops: [s] });
|
|
3008
|
-
}
|
|
3009
|
-
const e = at(t, "linear-gradient");
|
|
3010
|
-
if (e) {
|
|
3011
|
-
const s = ot(e);
|
|
3012
|
-
let n = 90, o = s;
|
|
3013
|
-
const a = s[0];
|
|
3014
|
-
if (a.includes("deg")) {
|
|
3015
|
-
const r = a.match(/(-?\d+(?:\.\d+)?)deg/);
|
|
3016
|
-
r && (n = parseFloat(r[1]), o = s.slice(1));
|
|
3017
|
-
} else a.includes("to ") && (n = {
|
|
3018
|
-
"to right": 90,
|
|
3019
|
-
"to left": 270,
|
|
3020
|
-
"to bottom": 180,
|
|
3021
|
-
"to top": 0,
|
|
3022
|
-
"to bottom right": 135,
|
|
3023
|
-
"to bottom left": 225,
|
|
3024
|
-
"to top right": 45,
|
|
3025
|
-
"to top left": 315
|
|
3026
|
-
}[a] ?? 90, o = s.slice(1));
|
|
3027
|
-
const l = lt(o);
|
|
3028
|
-
return l.length ? $({ type: "linear", angle: n, stops: l }) : null;
|
|
3029
|
-
}
|
|
3030
|
-
const i = at(t, "radial-gradient");
|
|
3031
|
-
if (i) {
|
|
3032
|
-
const s = ot(i), n = s[0] && !Zt(s[0]) ? s.slice(1) : s, o = lt(n);
|
|
3033
|
-
return o.length ? $({ type: "radial", angle: 0, stops: o }) : null;
|
|
3034
|
-
}
|
|
3035
|
-
return null;
|
|
3036
|
-
}, O = (c) => {
|
|
3037
|
-
if (c.type === "solid") {
|
|
3038
|
-
const e = c.stops[0], i = e.opacity ?? 100, s = e.color.replace("#", ""), n = Math.round(i / 100 * 255).toString(16).toUpperCase().padStart(2, "0");
|
|
3039
|
-
return `#${s}${n}`;
|
|
3040
|
-
}
|
|
3041
|
-
const t = c.stops.map(
|
|
3042
|
-
(e) => `${pt(e.color, e.opacity ?? 100)} ${e.position}%`
|
|
3043
|
-
).join(", ");
|
|
3044
|
-
return c.type === "radial" ? `radial-gradient(circle, ${t})` : `linear-gradient(${c.angle}deg, ${t})`;
|
|
3045
|
-
}, Q = (c) => {
|
|
3046
|
-
if (c.type === "solid") {
|
|
3047
|
-
const t = c.stops[0];
|
|
3048
|
-
return t ? t.color.replace("#", "").toUpperCase() : "Color";
|
|
3049
|
-
}
|
|
3050
|
-
return c.type === "linear" ? `Linear ${c.angle}°` : "Radial Gradient";
|
|
3051
|
-
}, N = class N extends b {
|
|
3065
|
+
const V = class V extends w {
|
|
3052
3066
|
constructor(t = {}) {
|
|
3053
3067
|
const e = typeof t.default == "string" ? void 0 : t.default;
|
|
3054
3068
|
super({
|
|
@@ -3079,16 +3093,16 @@ const ot = (c) => {
|
|
|
3079
3093
|
i.preventDefault(), this.closePopover();
|
|
3080
3094
|
}
|
|
3081
3095
|
}
|
|
3082
|
-
}, this.detectChange = t.detectChange, this.
|
|
3096
|
+
}, this.detectChange = t.detectChange, this.originalDefault = t.default, this.value = this.defaultValue();
|
|
3083
3097
|
}
|
|
3084
3098
|
defaultValue() {
|
|
3085
3099
|
const t = this.originalDefault;
|
|
3086
3100
|
if (typeof t == "string") {
|
|
3087
|
-
const i =
|
|
3101
|
+
const i = H(t);
|
|
3088
3102
|
if (i)
|
|
3089
|
-
return
|
|
3103
|
+
return A(i);
|
|
3090
3104
|
}
|
|
3091
|
-
return
|
|
3105
|
+
return A(t && typeof t == "object" ? t : {
|
|
3092
3106
|
type: "linear",
|
|
3093
3107
|
angle: 90,
|
|
3094
3108
|
stops: [
|
|
@@ -3100,20 +3114,20 @@ const ot = (c) => {
|
|
|
3100
3114
|
setValue(t) {
|
|
3101
3115
|
var i, s;
|
|
3102
3116
|
let e = null;
|
|
3103
|
-
typeof t == "string" ? e =
|
|
3117
|
+
typeof t == "string" ? e = H(t) : t && typeof t == "object" && (e = A(t)), e || (e = this.defaultValue()), this.value = e, this.updateUI(), this.isPopoverOpen && this.refreshPopoverContent(), (i = this.onChange) == null || i.call(this, this.value), (s = this.detectChange) == null || s.call(this, this.value), this.pendingSolidColor = null;
|
|
3104
3118
|
}
|
|
3105
3119
|
updateUI() {
|
|
3106
3120
|
if (this.previewEl && this.value)
|
|
3107
3121
|
if (this.value.type === "solid") {
|
|
3108
3122
|
const t = this.value.stops[0], e = t.opacity ?? 100;
|
|
3109
|
-
this.previewEl.style.background =
|
|
3123
|
+
this.previewEl.style.background = dt(t.color, e);
|
|
3110
3124
|
} else
|
|
3111
|
-
this.previewEl.style.background =
|
|
3125
|
+
this.previewEl.style.background = N(this.value);
|
|
3112
3126
|
this.inputEl && this.value && !this.isEditing && (this.inputEl.value = Q(this.value));
|
|
3113
3127
|
}
|
|
3114
3128
|
cssForTextValue() {
|
|
3115
3129
|
return this.value ? {
|
|
3116
|
-
background:
|
|
3130
|
+
background: N(this.value),
|
|
3117
3131
|
"-webkit-background-clip": "text",
|
|
3118
3132
|
"background-clip": "text",
|
|
3119
3133
|
color: "transparent",
|
|
@@ -3129,17 +3143,17 @@ const ot = (c) => {
|
|
|
3129
3143
|
s.className = "input-label", s.textContent = this.props.title, i.appendChild(s), t.appendChild(i);
|
|
3130
3144
|
}
|
|
3131
3145
|
const e = document.createElement("div");
|
|
3132
|
-
return e.className = "gradient-input-wrapper", this.previewEl = document.createElement("div"), this.previewEl.className = "gradient-mini-preview", this.previewEl.style.background = this.value ?
|
|
3146
|
+
return e.className = "gradient-input-wrapper", this.previewEl = document.createElement("div"), this.previewEl.className = "gradient-mini-preview", this.previewEl.style.background = this.value ? N(this.value) : "linear-gradient(90deg, #a84b4b 0%, #786666 100%)", this.previewEl.addEventListener("mousedown", (i) => {
|
|
3133
3147
|
i.preventDefault(), i.stopPropagation(), this.openPopover();
|
|
3134
3148
|
}), this.inputEl = document.createElement("input"), this.inputEl.type = "text", this.inputEl.className = "gradient-text-input", this.inputEl.placeholder = "Enter gradient CSS or paste color...", this.inputEl.value = this.value ? Q(this.value) : "", this.inputEl.readOnly = !1, this.inputEl.addEventListener("focus", () => {
|
|
3135
|
-
this.isEditing = !0, this.value && (this.inputEl.value =
|
|
3149
|
+
this.isEditing = !0, this.value && (this.inputEl.value = N(this.value));
|
|
3136
3150
|
}), this.inputEl.addEventListener("blur", () => {
|
|
3137
3151
|
this.isEditing = !1, this.value && (this.inputEl.value = Q(this.value));
|
|
3138
3152
|
}), this.inputEl.addEventListener(
|
|
3139
3153
|
"paste",
|
|
3140
3154
|
(i) => this.handlePaste(i)
|
|
3141
3155
|
), this.inputEl.addEventListener("input", (i) => this.handleTextInput(i)), this.inputEl.addEventListener("keydown", (i) => {
|
|
3142
|
-
i.key === "Enter" && (this.handleTextInput(i), this.inputEl.blur()), i.key === "Escape" && (this.value && (this.inputEl.value =
|
|
3156
|
+
i.key === "Enter" && (this.handleTextInput(i), this.inputEl.blur()), i.key === "Escape" && (this.value && (this.inputEl.value = N(this.value)), this.inputEl.blur());
|
|
3143
3157
|
}), e.appendChild(this.previewEl), e.appendChild(this.inputEl), t.appendChild(e), this.createPopover(), this.element = t, t;
|
|
3144
3158
|
}
|
|
3145
3159
|
createPopover() {
|
|
@@ -3191,11 +3205,18 @@ const ot = (c) => {
|
|
|
3191
3205
|
}
|
|
3192
3206
|
renderSolid(t) {
|
|
3193
3207
|
(!this.value || !this.value.stops || !this.value.stops.length) && (this.value || (this.value = this.defaultValue()), this.value.stops = [{ color: "#000000", position: 0, opacity: 100 }]);
|
|
3194
|
-
const e = this.value.stops[0], i = new
|
|
3208
|
+
const e = this.value.stops[0], i = new Zt({
|
|
3195
3209
|
initialColor: e.color,
|
|
3196
3210
|
initialOpacity: e.opacity ?? 100,
|
|
3197
3211
|
onColorChange: (s, n) => {
|
|
3198
|
-
|
|
3212
|
+
if (this.value) {
|
|
3213
|
+
const o = H(s);
|
|
3214
|
+
if (o && o.type !== "solid") {
|
|
3215
|
+
this.value = o, this.switchType(o.type);
|
|
3216
|
+
return;
|
|
3217
|
+
}
|
|
3218
|
+
this.value.stops[0].color = s, this.value.stops[0].opacity = n, this.updateUI(), this.triggerChange(), this.pendingSolidColor = s;
|
|
3219
|
+
}
|
|
3199
3220
|
}
|
|
3200
3221
|
});
|
|
3201
3222
|
this.solidPicker = i, t.appendChild(i.getElement());
|
|
@@ -3213,24 +3234,24 @@ const ot = (c) => {
|
|
|
3213
3234
|
const o = document.createElement("input");
|
|
3214
3235
|
o.type = "text", o.inputMode = "numeric", o.className = "gradient-degree-input", o.value = `${this.value.angle ?? 0}°`, o.style.width = "75px", o.style.textAlign = "center";
|
|
3215
3236
|
const a = document.createElement("button");
|
|
3216
|
-
a.type = "button", a.className = "gradient-flip-btn", a.innerHTML =
|
|
3237
|
+
a.type = "button", a.className = "gradient-flip-btn", a.innerHTML = _t, i.addEventListener("change", () => {
|
|
3217
3238
|
this.switchType(i.value === "radial" ? "radial" : "linear"), this.updateDegreeVisibility(o);
|
|
3218
|
-
}), o.addEventListener("focus", (
|
|
3219
|
-
const
|
|
3220
|
-
|
|
3221
|
-
}), o.addEventListener("input", (
|
|
3222
|
-
const
|
|
3223
|
-
!Number.isNaN(
|
|
3224
|
-
}), o.addEventListener("blur", (
|
|
3225
|
-
var
|
|
3239
|
+
}), o.addEventListener("focus", (m) => {
|
|
3240
|
+
const f = m.target;
|
|
3241
|
+
f.value = f.value.replace(/[^0-9-]/g, ""), setTimeout(() => f.select(), 0);
|
|
3242
|
+
}), o.addEventListener("input", (m) => {
|
|
3243
|
+
const f = parseInt(m.target.value);
|
|
3244
|
+
!Number.isNaN(f) && this.value && (this.value.angle = Math.max(0, Math.min(360, f)), this.debouncedPreviewUpdate());
|
|
3245
|
+
}), o.addEventListener("blur", (m) => {
|
|
3246
|
+
var y;
|
|
3226
3247
|
this.previewUpdateTimeout && (clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = null);
|
|
3227
|
-
const
|
|
3228
|
-
let
|
|
3229
|
-
Number.isNaN(
|
|
3248
|
+
const f = m.target;
|
|
3249
|
+
let C = parseInt(f.value);
|
|
3250
|
+
Number.isNaN(C) && (C = ((y = this.value) == null ? void 0 : y.angle) ?? 0), C = Math.max(0, Math.min(360, C)), this.value && (this.value.angle = C), f.value = `${C}°`, this.updateGradientPreview(), this.updateUI(), this.triggerChange();
|
|
3230
3251
|
}), a.addEventListener("click", () => {
|
|
3231
|
-
!this.value || !this.value.stops || (this.value.stops.forEach((
|
|
3232
|
-
|
|
3233
|
-
}), this.value.stops.sort((
|
|
3252
|
+
!this.value || !this.value.stops || (this.value.stops.forEach((m) => {
|
|
3253
|
+
m.position = 100 - m.position;
|
|
3254
|
+
}), this.value.stops.sort((m, f) => m.position - f.position), this.updateGradientPreview(l), this.createHandles(r, l), this.updateStopsList(u), this.updateUI(), this.triggerChange());
|
|
3234
3255
|
}), e.appendChild(i), e.appendChild(o), e.appendChild(a), t.appendChild(e), this.updateDegreeVisibility(o);
|
|
3235
3256
|
const l = document.createElement("div");
|
|
3236
3257
|
l.className = "gradient-preview", this.updateGradientPreview(l);
|
|
@@ -3242,10 +3263,15 @@ const ot = (c) => {
|
|
|
3242
3263
|
p.textContent = "Stops";
|
|
3243
3264
|
const d = document.createElement("button");
|
|
3244
3265
|
d.type = "button", d.className = "gradient-add-stop", d.textContent = "+", h.appendChild(p), h.appendChild(d);
|
|
3245
|
-
const
|
|
3246
|
-
|
|
3247
|
-
|
|
3248
|
-
|
|
3266
|
+
const u = document.createElement("div");
|
|
3267
|
+
u.className = "gradient-stops", t.appendChild(h), t.appendChild(u), this.updateStopsList(u);
|
|
3268
|
+
const g = it((m) => {
|
|
3269
|
+
const f = H(m);
|
|
3270
|
+
f && (this.value = f, this.switchType(f.type), this.updateUI(), this.triggerChange());
|
|
3271
|
+
}, "all");
|
|
3272
|
+
this.recentGradientRefresh = g.refresh, t.appendChild(g.container), d.addEventListener("click", () => {
|
|
3273
|
+
var m;
|
|
3274
|
+
this.addStop(), this.updateStopsList(u), this.updateGradientPreview(l), this.createHandles(r, l), this.updateUI(), ((m = document.activeElement) == null ? void 0 : m.tagName) !== "INPUT" && this.repositionPopover(), this.triggerChange();
|
|
3249
3275
|
});
|
|
3250
3276
|
}
|
|
3251
3277
|
updateDegreeVisibility(t) {
|
|
@@ -3255,7 +3281,7 @@ const ot = (c) => {
|
|
|
3255
3281
|
updateGradientPreview(t) {
|
|
3256
3282
|
var i;
|
|
3257
3283
|
const e = t || ((i = this.popoverEl) == null ? void 0 : i.querySelector(".gradient-preview"));
|
|
3258
|
-
e && this.value && (e.style.background =
|
|
3284
|
+
e && this.value && (e.style.background = N(this.value));
|
|
3259
3285
|
}
|
|
3260
3286
|
debouncedPreviewUpdate(t) {
|
|
3261
3287
|
this.previewUpdateTimeout && clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = window.setTimeout(() => {
|
|
@@ -3269,15 +3295,15 @@ const ot = (c) => {
|
|
|
3269
3295
|
const o = document.createElement("div");
|
|
3270
3296
|
o.className = "gstop-chip", o.style.backgroundColor = i.color, n.appendChild(o);
|
|
3271
3297
|
let a = !1, l = 0, r = 0;
|
|
3272
|
-
const h = (
|
|
3273
|
-
a = !0, l =
|
|
3274
|
-
}, p = (
|
|
3298
|
+
const h = (u) => {
|
|
3299
|
+
a = !0, l = u.clientX, r = this.value.stops[s].position, n.classList.add("selected"), document.addEventListener("mousemove", p), document.addEventListener("mouseup", d), u.preventDefault(), u.stopPropagation();
|
|
3300
|
+
}, p = (u) => {
|
|
3275
3301
|
if (!a || !this.value) return;
|
|
3276
|
-
const
|
|
3277
|
-
let f = r + m /
|
|
3302
|
+
const g = e.getBoundingClientRect(), m = u.clientX - l;
|
|
3303
|
+
let f = r + m / g.width * 100;
|
|
3278
3304
|
f = Math.max(0, Math.min(100, f)), this.value.stops[s].position = Math.round(f), n.style.left = `${f}%`, this.updateGradientPreview(), this.updateUI();
|
|
3279
3305
|
}, d = () => {
|
|
3280
|
-
a && (a = !1, n.classList.remove("selected"), document.removeEventListener("mousemove", p), document.removeEventListener("mouseup", d), this.value && (this.value.stops.sort((
|
|
3306
|
+
a && (a = !1, n.classList.remove("selected"), document.removeEventListener("mousemove", p), document.removeEventListener("mouseup", d), this.value && (this.value.stops.sort((u, g) => u.position - g.position), this.createHandles(t, e)), this.updateStopsList(), this.updateUI(), this.triggerChange());
|
|
3281
3307
|
};
|
|
3282
3308
|
n.addEventListener("mousedown", h), t.appendChild(n);
|
|
3283
3309
|
});
|
|
@@ -3292,12 +3318,12 @@ const ot = (c) => {
|
|
|
3292
3318
|
(n, o) => n.position - o.position
|
|
3293
3319
|
);
|
|
3294
3320
|
i.forEach((n, o) => {
|
|
3295
|
-
var
|
|
3321
|
+
var G, st;
|
|
3296
3322
|
const a = this.value.stops.findIndex(
|
|
3297
|
-
(v,
|
|
3298
|
-
(
|
|
3323
|
+
(v, b) => v.position === n.position && v.color === n.color && v.opacity === n.opacity && this.value.stops.slice(0, b).filter(
|
|
3324
|
+
(x) => x.position === n.position && x.color === n.color && x.opacity === n.opacity
|
|
3299
3325
|
).length === i.slice(0, o).filter(
|
|
3300
|
-
(
|
|
3326
|
+
(x) => x.position === n.position && x.color === n.color && x.opacity === n.opacity
|
|
3301
3327
|
).length
|
|
3302
3328
|
), l = a !== -1 ? a : o, r = document.createElement("div");
|
|
3303
3329
|
r.className = "gstop-row";
|
|
@@ -3307,75 +3333,75 @@ const ot = (c) => {
|
|
|
3307
3333
|
p.type = "text", p.className = "gstop-position-input", p.value = `${n.position}%`, p.style.width = "60px", h.appendChild(p);
|
|
3308
3334
|
const d = document.createElement("div");
|
|
3309
3335
|
d.className = "gstop-color-container";
|
|
3310
|
-
const
|
|
3311
|
-
|
|
3312
|
-
const
|
|
3313
|
-
|
|
3336
|
+
const u = document.createElement("div");
|
|
3337
|
+
u.className = "gstop-color-preview", u.style.backgroundColor = n.color;
|
|
3338
|
+
const g = document.createElement("input");
|
|
3339
|
+
g.type = "text", g.className = "gstop-color-input", g.value = n.color.replace("#", "").toUpperCase();
|
|
3314
3340
|
const m = document.createElement("button");
|
|
3315
|
-
m.type = "button", m.className = "gstop-color-copy", m.textContent = "Copy", d.appendChild(
|
|
3341
|
+
m.type = "button", m.className = "gstop-color-copy", m.textContent = "Copy", d.appendChild(u), d.appendChild(g), d.appendChild(m);
|
|
3316
3342
|
const f = document.createElement("button");
|
|
3317
|
-
f.type = "button", f.className = "gstop-del", f.innerHTML =
|
|
3343
|
+
f.type = "button", f.className = "gstop-del", f.innerHTML = Jt, f.disabled = (((st = (G = this.value) == null ? void 0 : G.stops) == null ? void 0 : st.length) || 0) <= 2, r.appendChild(h), r.appendChild(d), r.appendChild(f), e.appendChild(r);
|
|
3318
3344
|
const C = document.createElement("span");
|
|
3319
3345
|
C.className = "gstop-opacity-label", C.textContent = "Opacity";
|
|
3320
|
-
const
|
|
3321
|
-
|
|
3322
|
-
const
|
|
3323
|
-
|
|
3324
|
-
const
|
|
3325
|
-
|
|
3346
|
+
const y = document.createElement("div");
|
|
3347
|
+
y.className = "gstop-opacity-group";
|
|
3348
|
+
const E = document.createElement("input");
|
|
3349
|
+
E.type = "range", E.className = "gstop-opacity-slider", E.min = "0", E.max = "100", E.value = String(n.opacity ?? 100);
|
|
3350
|
+
const O = S(n.color);
|
|
3351
|
+
E.style.setProperty(
|
|
3326
3352
|
"--slider-color",
|
|
3327
|
-
`rgb(${
|
|
3353
|
+
`rgb(${O.r}, ${O.g}, ${O.b})`
|
|
3328
3354
|
);
|
|
3329
3355
|
const k = document.createElement("span");
|
|
3330
|
-
k.className = "gstop-opacity-value", k.textContent = `${n.opacity ?? 100}%`,
|
|
3331
|
-
const
|
|
3332
|
-
|
|
3333
|
-
const
|
|
3334
|
-
|
|
3356
|
+
k.className = "gstop-opacity-value", k.textContent = `${n.opacity ?? 100}%`, y.appendChild(E), y.appendChild(k);
|
|
3357
|
+
const D = new Xt((v, b) => {
|
|
3358
|
+
g.value = v.replace("#", "").toUpperCase(), u.style.backgroundColor = v, this.value.stops[l].color = v, b !== void 0 && (this.value.stops[l].opacity = b, E.value = String(b), k.textContent = `${b}%`);
|
|
3359
|
+
const x = S(v);
|
|
3360
|
+
E.style.setProperty(
|
|
3335
3361
|
"--slider-color",
|
|
3336
|
-
`rgb(${
|
|
3362
|
+
`rgb(${x.r}, ${x.g}, ${x.b})`
|
|
3337
3363
|
), this.updateGradientPreview(), this.createHandles(
|
|
3338
3364
|
this.popoverEl.querySelector(".gradient-handles"),
|
|
3339
3365
|
this.popoverEl.querySelector(".gradient-preview")
|
|
3340
3366
|
), this.updateUI(), this.triggerChange();
|
|
3341
|
-
}, "
|
|
3342
|
-
|
|
3343
|
-
v.preventDefault(), v.stopPropagation(),
|
|
3344
|
-
}),
|
|
3345
|
-
const v =
|
|
3346
|
-
if (/^#[0-9A-Fa-f]{6}$/.test(
|
|
3347
|
-
this.value.stops[l].color =
|
|
3348
|
-
const
|
|
3349
|
-
|
|
3367
|
+
}, "solid");
|
|
3368
|
+
g.addEventListener("click", (v) => {
|
|
3369
|
+
v.preventDefault(), v.stopPropagation(), D.open(n.color, g, n.opacity ?? 100);
|
|
3370
|
+
}), g.addEventListener("input", () => {
|
|
3371
|
+
const v = g.value.trim(), b = v.startsWith("#") ? v : `#${v}`;
|
|
3372
|
+
if (/^#[0-9A-Fa-f]{6}$/.test(b)) {
|
|
3373
|
+
this.value.stops[l].color = b, u.style.backgroundColor = b;
|
|
3374
|
+
const x = S(b);
|
|
3375
|
+
E.style.setProperty(
|
|
3350
3376
|
"--slider-color",
|
|
3351
|
-
`rgb(${
|
|
3377
|
+
`rgb(${x.r}, ${x.g}, ${x.b})`
|
|
3352
3378
|
), this.debouncedPreviewUpdate();
|
|
3353
3379
|
}
|
|
3354
|
-
}),
|
|
3380
|
+
}), g.addEventListener("blur", () => {
|
|
3355
3381
|
this.previewUpdateTimeout && (clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = null), this.updateGradientPreview(), this.updateUI(), this.triggerChange();
|
|
3356
3382
|
}), m.addEventListener("click", async (v) => {
|
|
3357
3383
|
v.stopPropagation();
|
|
3358
3384
|
try {
|
|
3359
|
-
await navigator.clipboard.writeText(`#${
|
|
3385
|
+
await navigator.clipboard.writeText(`#${g.value}`);
|
|
3360
3386
|
} catch {
|
|
3361
3387
|
}
|
|
3362
3388
|
}), p.addEventListener("focus", (v) => {
|
|
3363
|
-
const
|
|
3364
|
-
|
|
3389
|
+
const b = v.target;
|
|
3390
|
+
b.value = b.value.replace("%", ""), b.select();
|
|
3365
3391
|
}), p.addEventListener("input", (v) => {
|
|
3366
|
-
const
|
|
3367
|
-
if (!Number.isNaN(
|
|
3368
|
-
const z = Math.max(0, Math.min(100,
|
|
3369
|
-
this.value.stops[l].position = z,
|
|
3392
|
+
const b = v.target, x = parseInt(b.value.replace(/[^\d]/g, ""), 10);
|
|
3393
|
+
if (!Number.isNaN(x)) {
|
|
3394
|
+
const z = Math.max(0, Math.min(100, x));
|
|
3395
|
+
this.value.stops[l].position = z, b.value = `${z}%`, this.debouncedPreviewUpdate();
|
|
3370
3396
|
}
|
|
3371
3397
|
}), p.addEventListener("blur", (v) => {
|
|
3372
3398
|
this.previewUpdateTimeout && (clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = null);
|
|
3373
|
-
const
|
|
3374
|
-
if (Number.isNaN(
|
|
3375
|
-
|
|
3399
|
+
const b = v.target, x = parseInt(b.value.replace(/[^\d]/g, ""), 10);
|
|
3400
|
+
if (Number.isNaN(x))
|
|
3401
|
+
b.value = `${this.value.stops[l].position}%`;
|
|
3376
3402
|
else {
|
|
3377
|
-
const z = Math.max(0, Math.min(100,
|
|
3378
|
-
this.value.stops[l].position = z,
|
|
3403
|
+
const z = Math.max(0, Math.min(100, x));
|
|
3404
|
+
this.value.stops[l].position = z, b.value = `${z}%`;
|
|
3379
3405
|
}
|
|
3380
3406
|
this.updateGradientPreview(), this.createHandles(
|
|
3381
3407
|
this.popoverEl.querySelector(".gradient-handles"),
|
|
@@ -3387,10 +3413,10 @@ const ot = (c) => {
|
|
|
3387
3413
|
this.popoverEl.querySelector(".gradient-handles"),
|
|
3388
3414
|
this.popoverEl.querySelector(".gradient-preview")
|
|
3389
3415
|
), this.updateStopsList(), this.updateGradientPreview(), this.updateUI(), ((v = document.activeElement) == null ? void 0 : v.tagName) !== "INPUT" && this.repositionPopover(), this.triggerChange());
|
|
3390
|
-
}),
|
|
3391
|
-
const v = parseInt(
|
|
3416
|
+
}), E.addEventListener("input", () => {
|
|
3417
|
+
const v = parseInt(E.value, 10);
|
|
3392
3418
|
this.value.stops[l].opacity = Math.max(0, Math.min(100, v)), k.textContent = `${this.value.stops[l].opacity}%`, this.debouncedPreviewUpdate();
|
|
3393
|
-
}),
|
|
3419
|
+
}), E.addEventListener("change", () => {
|
|
3394
3420
|
this.previewUpdateTimeout && (clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = null), this.updateGradientPreview(), this.updateUI(), this.triggerChange();
|
|
3395
3421
|
});
|
|
3396
3422
|
});
|
|
@@ -3413,16 +3439,16 @@ const ot = (c) => {
|
|
|
3413
3439
|
this.value.stops.push(n), this.value.stops.sort((o, a) => o.position - a.position);
|
|
3414
3440
|
}
|
|
3415
3441
|
openPopover() {
|
|
3416
|
-
if (this.popoverEl && (
|
|
3417
|
-
if (this.isPopoverOpen = !0,
|
|
3442
|
+
if (this.popoverEl && (V.openInstance && V.openInstance !== this && V.openInstance.closePopover(), !this.isPopoverOpen)) {
|
|
3443
|
+
if (this.isPopoverOpen = !0, V.openInstance = this, this.popoverEl.style.display = "flex", this.refreshPopoverContent(), this.element) {
|
|
3418
3444
|
const t = this.element.getBoundingClientRect(), e = 306, i = window.innerWidth, s = window.innerHeight, n = 16;
|
|
3419
3445
|
this.popoverEl.style.position = "fixed", this.popoverEl.style.zIndex = "10000", this.popoverEl.style.left = "-9999px", this.popoverEl.style.top = "0px";
|
|
3420
3446
|
const o = this.popoverEl.offsetHeight;
|
|
3421
3447
|
let a = t.right + 8, l = t.top;
|
|
3422
3448
|
const r = i - t.right, h = t.left, p = e + n;
|
|
3423
3449
|
r < p && h > r + 100 && (a = t.left - e - 8);
|
|
3424
|
-
const d = s - t.bottom,
|
|
3425
|
-
|
|
3450
|
+
const d = s - t.bottom, u = t.top;
|
|
3451
|
+
u >= o + n ? l = t.top - o - 8 : d >= o + n ? l = t.bottom + 8 : u > d ? (l = t.top - o - 8, l < n && (l = n)) : (l = t.bottom + 8, l + o > s - n && (l = s - o - n)), this.popoverEl.style.left = `${a}px`, this.popoverEl.style.top = `${l}px`;
|
|
3426
3452
|
}
|
|
3427
3453
|
setTimeout(
|
|
3428
3454
|
() => document.addEventListener("click", this.onBackgroundClick, !0),
|
|
@@ -3440,25 +3466,31 @@ const ot = (c) => {
|
|
|
3440
3466
|
let l = e.right + 8, r = e.top;
|
|
3441
3467
|
const h = s - e.right, p = e.left, d = i + o;
|
|
3442
3468
|
h < d && p > h + 100 && (l = e.left - i - 8);
|
|
3443
|
-
const
|
|
3444
|
-
|
|
3469
|
+
const u = n - e.bottom, g = e.top;
|
|
3470
|
+
g >= a + o ? r = e.top - a - 8 : u >= a + o ? r = e.bottom + 8 : g > u ? (r = e.top - a - 8, r < o && (r = o)) : (r = e.bottom + 8, r + a > n - o && (r = n - a - o)), this.popoverEl.style.left = `${l}px`, this.popoverEl.style.top = `${r}px`;
|
|
3445
3471
|
});
|
|
3446
3472
|
}
|
|
3447
3473
|
refreshPopoverContent() {
|
|
3448
|
-
var n;
|
|
3474
|
+
var n, o;
|
|
3449
3475
|
if (!this.popoverEl) return;
|
|
3450
3476
|
const t = this.popoverEl.querySelectorAll(".gradient-type-tab");
|
|
3451
|
-
t.forEach((
|
|
3477
|
+
t.forEach((a) => a.classList.remove("active"));
|
|
3452
3478
|
const e = t[0], i = t[1];
|
|
3453
|
-
((n = this.value) == null ? void 0 : n.type) === "solid" ? e.classList.add("active") : i.classList.add("active"), this.popoverEl.offsetHeight;
|
|
3479
|
+
((n = this.value) == null ? void 0 : n.type) === "solid" ? e.classList.add("active") : (i.classList.add("active"), (o = this.recentGradientRefresh) == null || o.call(this)), this.popoverEl.offsetHeight;
|
|
3454
3480
|
const s = this.popoverEl.querySelector(".gradient-editor-content");
|
|
3455
3481
|
s && this.updatePopoverContent(s);
|
|
3456
3482
|
}
|
|
3457
3483
|
closePopover() {
|
|
3458
|
-
|
|
3484
|
+
if (!(!this.popoverEl || !this.isPopoverOpen)) {
|
|
3485
|
+
if (this.isPopoverOpen = !1, this.popoverEl.style.display = "none", document.removeEventListener("click", this.onBackgroundClick, !0), document.removeEventListener("keydown", this.handlePopoverKeydown, !0), this.commitPendingSolidColor(), this.value && this.value.type !== "solid") {
|
|
3486
|
+
const t = N(this.value);
|
|
3487
|
+
B.addColor(t, "gradient");
|
|
3488
|
+
}
|
|
3489
|
+
this.previewUpdateTimeout && (clearTimeout(this.previewUpdateTimeout), this.previewUpdateTimeout = null), V.openInstance === this && (V.openInstance = null);
|
|
3490
|
+
}
|
|
3459
3491
|
}
|
|
3460
3492
|
commitPendingSolidColor() {
|
|
3461
|
-
this.pendingSolidColor && (this.solidPicker ? this.solidPicker.commitRecentColor() :
|
|
3493
|
+
this.pendingSolidColor && (this.solidPicker ? this.solidPicker.commitRecentColor() : B.addColor(this.pendingSolidColor, "solid"), this.pendingSolidColor = null);
|
|
3462
3494
|
}
|
|
3463
3495
|
handlePaste(t) {
|
|
3464
3496
|
var i;
|
|
@@ -3471,7 +3503,7 @@ const ot = (c) => {
|
|
|
3471
3503
|
this.parseAndSet(e.value);
|
|
3472
3504
|
}
|
|
3473
3505
|
parseAndSet(t) {
|
|
3474
|
-
const e =
|
|
3506
|
+
const e = H(t.trim());
|
|
3475
3507
|
e && this.setValue(e);
|
|
3476
3508
|
}
|
|
3477
3509
|
triggerChange() {
|
|
@@ -3482,10 +3514,10 @@ const ot = (c) => {
|
|
|
3482
3514
|
return this.element;
|
|
3483
3515
|
}
|
|
3484
3516
|
getValue() {
|
|
3485
|
-
return this.value ?
|
|
3517
|
+
return this.value ? N(this.value) : "";
|
|
3486
3518
|
}
|
|
3487
3519
|
getCSSValue() {
|
|
3488
|
-
return this.value ?
|
|
3520
|
+
return this.value ? N(this.value) : "";
|
|
3489
3521
|
}
|
|
3490
3522
|
getCSSForText() {
|
|
3491
3523
|
return this.value ? this.cssForTextValue() : {};
|
|
@@ -3494,8 +3526,8 @@ const ot = (c) => {
|
|
|
3494
3526
|
return this.value;
|
|
3495
3527
|
}
|
|
3496
3528
|
};
|
|
3497
|
-
|
|
3498
|
-
let
|
|
3529
|
+
V.openInstance = null;
|
|
3530
|
+
let ct = V;
|
|
3499
3531
|
const Kt = `
|
|
3500
3532
|
<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
|
|
3501
3533
|
<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"/>
|
|
@@ -3505,7 +3537,7 @@ const Kt = `
|
|
|
3505
3537
|
<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"/>
|
|
3506
3538
|
</svg>
|
|
3507
3539
|
`;
|
|
3508
|
-
class Ee extends
|
|
3540
|
+
class Ee extends T {
|
|
3509
3541
|
constructor(t) {
|
|
3510
3542
|
super({
|
|
3511
3543
|
title: "Border",
|
|
@@ -3554,7 +3586,7 @@ const Qt = `
|
|
|
3554
3586
|
<path d="M6 5.75H12M9 5.75V13.25M5.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.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.35V12.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.25Z" stroke="#667085" stroke-linecap="round" stroke-linejoin="round"/>
|
|
3555
3587
|
</svg>
|
|
3556
3588
|
`;
|
|
3557
|
-
class be extends
|
|
3589
|
+
class be extends T {
|
|
3558
3590
|
constructor(t = {}) {
|
|
3559
3591
|
const { showAlign: e = t.showAlign ?? !0, ...i } = t;
|
|
3560
3592
|
super({
|
|
@@ -3620,7 +3652,7 @@ class be extends V {
|
|
|
3620
3652
|
`;
|
|
3621
3653
|
}
|
|
3622
3654
|
}
|
|
3623
|
-
class
|
|
3655
|
+
class _ extends w {
|
|
3624
3656
|
constructor(t) {
|
|
3625
3657
|
super({
|
|
3626
3658
|
...t,
|
|
@@ -3666,31 +3698,31 @@ class j extends b {
|
|
|
3666
3698
|
}), i;
|
|
3667
3699
|
}
|
|
3668
3700
|
}
|
|
3669
|
-
class we extends
|
|
3701
|
+
class we extends T {
|
|
3670
3702
|
constructor(t) {
|
|
3671
3703
|
super({
|
|
3672
3704
|
title: "Margins",
|
|
3673
3705
|
collapsed: t == null ? void 0 : t.collapsed,
|
|
3674
3706
|
settings: {
|
|
3675
|
-
marginTop: new
|
|
3707
|
+
marginTop: new _({
|
|
3676
3708
|
title: "Top",
|
|
3677
3709
|
icon: ie,
|
|
3678
3710
|
suffix: "px",
|
|
3679
3711
|
default: (t == null ? void 0 : t.marginTop) ?? "auto"
|
|
3680
3712
|
}),
|
|
3681
|
-
marginRight: new
|
|
3713
|
+
marginRight: new _({
|
|
3682
3714
|
title: "Right",
|
|
3683
3715
|
icon: se,
|
|
3684
3716
|
suffix: "px",
|
|
3685
3717
|
default: (t == null ? void 0 : t.marginRight) ?? 0
|
|
3686
3718
|
}),
|
|
3687
|
-
marginBottom: new
|
|
3719
|
+
marginBottom: new _({
|
|
3688
3720
|
title: "Bottom",
|
|
3689
3721
|
icon: ne,
|
|
3690
3722
|
suffix: "px",
|
|
3691
3723
|
default: (t == null ? void 0 : t.marginBottom) ?? 0
|
|
3692
3724
|
}),
|
|
3693
|
-
marginLeft: new
|
|
3725
|
+
marginLeft: new _({
|
|
3694
3726
|
title: "Left",
|
|
3695
3727
|
icon: oe,
|
|
3696
3728
|
suffix: "px",
|
|
@@ -3718,13 +3750,13 @@ const ie = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewB
|
|
|
3718
3750
|
</svg>`, oe = `<svg xmlns="http://www.w3.org/2000/svg" width="18" height="19" viewBox="0 0 18 19" fill="none">
|
|
3719
3751
|
<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"/>
|
|
3720
3752
|
</svg>`;
|
|
3721
|
-
class xe extends
|
|
3753
|
+
class xe extends T {
|
|
3722
3754
|
constructor(t) {
|
|
3723
3755
|
super({
|
|
3724
3756
|
title: "Background Image",
|
|
3725
3757
|
collapsed: t == null ? void 0 : t.collapsed,
|
|
3726
3758
|
settings: {
|
|
3727
|
-
backgroundImage: new
|
|
3759
|
+
backgroundImage: new pt({
|
|
3728
3760
|
...t == null ? void 0 : t.uploadProps,
|
|
3729
3761
|
default: (t == null ? void 0 : t.backgroundImage) ?? ""
|
|
3730
3762
|
}),
|
|
@@ -3767,7 +3799,7 @@ export {
|
|
|
3767
3799
|
P as ColorWithOpacitySetting,
|
|
3768
3800
|
he as DimensionSetting,
|
|
3769
3801
|
me as GapSetting,
|
|
3770
|
-
|
|
3802
|
+
ct as GradientSetting,
|
|
3771
3803
|
be as HeaderTypographySettingSet,
|
|
3772
3804
|
pe as HeightSetting,
|
|
3773
3805
|
re as HtmlSetting,
|
|
@@ -3779,19 +3811,19 @@ export {
|
|
|
3779
3811
|
St as OpacitySetting,
|
|
3780
3812
|
ue as SelectApiSettings,
|
|
3781
3813
|
et as SelectSetting,
|
|
3782
|
-
|
|
3783
|
-
|
|
3814
|
+
w as Setting,
|
|
3815
|
+
T as SettingGroup,
|
|
3784
3816
|
xt as StringSetting,
|
|
3785
3817
|
bt as TabSettingGroup,
|
|
3786
3818
|
bt as TabsSettingGroup,
|
|
3787
3819
|
ge as Toggle,
|
|
3788
|
-
|
|
3820
|
+
pt as UploadSetting,
|
|
3789
3821
|
de as WidthSetting,
|
|
3790
3822
|
le as asSettingGroupWithSettings,
|
|
3791
3823
|
wt as createSettingGroup,
|
|
3792
3824
|
ae as createTabSettingGroup,
|
|
3793
|
-
|
|
3794
|
-
|
|
3825
|
+
R as isSetting,
|
|
3826
|
+
ot as isSettingChild,
|
|
3795
3827
|
L as isSettingGroup,
|
|
3796
|
-
|
|
3828
|
+
j as iterateSettings
|
|
3797
3829
|
};
|