@jackuait/blok 0.23.1 → 0.23.3
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/README.md +3 -1
- package/dist/blok.cjs +1 -1
- package/dist/blok.iife.js +73 -73
- package/dist/blok.mjs +3 -3
- package/dist/blok.umd.js +53 -53
- package/dist/chunks/{blok-BPeM6wKv.mjs → blok-1H9roBGf.mjs} +2271 -2249
- package/dist/chunks/{blok-Ci1zCOUg.cjs → blok-J3Lfa_bK.cjs} +13 -13
- package/dist/chunks/{constants-DR3sya6U.mjs → constants-BJ79cqMa.mjs} +288 -284
- package/dist/chunks/constants-BZUc1kAY.cjs +606 -0
- package/dist/chunks/{tools-B72rczVw.mjs → tools-ByOjWADT.mjs} +420 -418
- package/dist/chunks/{tools-DlOZpcVU.cjs → tools-OHDv2C7w.cjs} +2 -2
- package/dist/full.cjs +1 -1
- package/dist/full.mjs +3 -3
- package/dist/react.cjs +1 -1
- package/dist/react.mjs +54 -33
- package/dist/tools.cjs +1 -1
- package/dist/tools.mjs +2 -2
- package/package.json +1 -1
- package/src/blok.ts +12 -0
- package/src/components/block/tool-renderer.ts +2 -2
- package/src/components/blocks.ts +32 -10
- package/src/components/constants/test-ids.ts +17 -0
- package/src/components/constants.ts +5 -0
- package/src/components/events/BlockRendered.ts +9 -0
- package/src/components/events/BlocksRendered.ts +13 -0
- package/src/components/events/index.ts +8 -0
- package/src/components/inline-tools/inline-tool-link.ts +23 -9
- package/src/components/modules/api/events.ts +10 -10
- package/src/components/modules/api/index.ts +3 -0
- package/src/components/modules/api/tools.ts +3 -0
- package/src/components/modules/blockManager/blockManager.ts +1 -1
- package/src/components/modules/paste/index.ts +10 -1
- package/src/components/modules/renderer.ts +146 -131
- package/src/components/modules/toolbar/plus-button.ts +2 -1
- package/src/components/modules/toolbar/settings-toggler.ts +2 -2
- package/src/components/modules/tools.ts +18 -0
- package/src/components/tools/factory.ts +28 -1
- package/src/react/BlokEditor.tsx +17 -5
- package/src/react/config-keys.ts +2 -0
- package/src/react/deep-equal.ts +48 -0
- package/src/react/types.ts +2 -0
- package/src/react/useBlok.ts +37 -0
- package/types/api/events.d.ts +35 -5
- package/types/api/tools.d.ts +16 -1
- package/types/configs/blok-config.d.ts +37 -0
- package/types/events/editor-events.ts +41 -0
- package/types/index.d.ts +5 -1
- package/types/react.d.ts +13 -2
- package/dist/chunks/constants-Bkncy0y5.cjs +0 -606
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { i as e, t } from "./chunk-5O_1xk2F.mjs";
|
|
2
|
-
import { $ as n, $n as r, $r as i, $t as a, Ai as o, An as s, Ar as c, At as l, B as u, Bn as d, Br as f, Bt as p, C as m, Ci as h, Cn as g, Cr as _, Ct as v, Dn as y, Dr as b, Dt as x,
|
|
2
|
+
import { $ as n, $n as r, $r as i, $t as a, Ai as o, An as s, Ar as c, At as l, B as u, Bn as d, Br as f, Bt as p, C as m, Ci as h, Cn as g, Cr as _, Ct as v, Dn as y, Dr as b, Dt as x, Ea as S, Ei as C, En as w, Er as T, Et as E, F as D, Fn as ee, Fr as O, Ft as k, G as A, Gn as te, Gr as j, Gt as M, H as N, Hn as ne, Hr as P, Ht as re, I as F, In as ie, Ir as ae, It as I, J as oe, Jn as L, Jr as se, Jt as ce, Kn as le, Kr as ue, Kt as de, L as R, Ln as fe, Lr as pe, Lt as me, Ma as z, Mn as he, Mr as ge, Mt as _e, Na as ve, Ni as ye, Nn as be, Nr as xe, Nt as Se, On as Ce, Or as we, Ot as Te, P as Ee, Pi as De, Pn as Oe, Pr as ke, Pt as Ae, Q as je, Qn as Me, Qr as Ne, Qt as Pe, R as Fe, Rn as Ie, Rr as Le, Rt as Re, S as ze, Si as Be, Sn as Ve, Sr as He, St as Ue, T as We, Ti as Ge, Tn as Ke, Tr as qe, Tt as Je, U as Ye, Un as Xe, Ur as Ze, Ut as Qe, Vn as $e, Vr as et, Vt as tt, W as B, Wn as nt, Wr as rt, Wt as it, X as at, Xn as ot, Xr as st, Xt as ct, Y as lt, Yn as ut, Yr as dt, Yt as ft, Z as pt, Zi as mt, Zn as ht, Zt as gt, _ as _t, _n as vt, _r as yt, _t as bt, a as xt, ai as St, ar as Ct, at as wt, b as Tt, bi as V, bn as Et, br as Dt, bt as Ot, c as kt, cn as At, cr as jt, ct as Mt, d as Nt, di as Pt, dn as Ft, dr as It, dt as Lt, ei as Rt, en as zt, er as Bt, et as Vt, f as Ht, fn as Ut, fr as Wt, ft as Gt, g as Kt, gi as qt, gn as Jt, gr as Yt, gt as Xt, h as Zt, hn as Qt, hr as $t, ht as en, i as tn, ia as nn, ii as rn, in as an, ir as on, it as sn, jn as cn, jr as ln, jt as un, ki as H, kn as dn, kr as fn, kt as pn, l as mn, li as hn, ln as gn, lr as _n, lt as vn, mn as yn, mr as bn, mt as xn, n as Sn, ni as Cn, nn as wn, nr as Tn, nt as En, o as Dn, oa as On, oi as kn, on as An, or as jn, ot as Mn, p as Nn, pi as Pn, pn as Fn, pr as In, pt as Ln, q as Rn, qr as zn, qt as Bn, r as Vn, ri as Hn, rr as Un, rt as Wn, s as Gn, si as Kn, sn as qn, sr as Jn, st as Yn, t as Xn, ti as Zn, tr as Qn, u as U, ui as $n, un as er, ur as tr, ut as nr, v as rr, vn as ir, vr as ar, vt as or, wi as sr, wn as cr, wr as lr, wt as ur, x as dr, xi as fr, xn as pr, xr as mr, xt as hr, y as gr, yn as _r, yr as vr, yt as yr, z as br, zn as xr, zr as Sr, zt as Cr } from "./constants-BJ79cqMa.mjs";
|
|
3
3
|
import { t as W } from "./objectSpread2-jlBcdYeb.mjs";
|
|
4
4
|
import { n as G } from "./tw-DmW6-pCY.mjs";
|
|
5
5
|
import { n as wr } from "./lightweight-i18n-Cj88c8gl.mjs";
|
|
@@ -82,7 +82,7 @@ var jr = [
|
|
|
82
82
|
}
|
|
83
83
|
drawView() {
|
|
84
84
|
let t = document.createElement("DIV");
|
|
85
|
-
t.className = G(this.api.styles.block, e.WRAPPER_CLASSES, Nr, Pr), t.setAttribute(
|
|
85
|
+
t.className = G(this.api.styles.block, e.WRAPPER_CLASSES, Nr, Pr), t.setAttribute(z.tool, "paragraph"), t.contentEditable = "false";
|
|
86
86
|
let n = this.buildInlineStyles();
|
|
87
87
|
return Object.keys(n).length > 0 && Object.assign(t.style, n), this._data.text ? t.innerHTML = this._data.text : this.readOnly && (t.innerHTML = "<br>"), this.readOnly || (t.contentEditable = "true", t.addEventListener("keyup", this.onKeyUp), this.placeholderCleanup = Rr(t, this.api.i18n.t(this._placeholder), "data-blok-placeholder-active")), t;
|
|
88
88
|
}
|
|
@@ -105,7 +105,7 @@ var jr = [
|
|
|
105
105
|
return !(e.text.trim() === "" && !this._preserveBlank);
|
|
106
106
|
}
|
|
107
107
|
save(e) {
|
|
108
|
-
return { text:
|
|
108
|
+
return { text: nn(e.innerHTML) };
|
|
109
109
|
}
|
|
110
110
|
onPaste(e) {
|
|
111
111
|
let t = e.detail;
|
|
@@ -139,7 +139,7 @@ var jr = [
|
|
|
139
139
|
}
|
|
140
140
|
static get toolbox() {
|
|
141
141
|
return {
|
|
142
|
-
icon:
|
|
142
|
+
icon: ie,
|
|
143
143
|
titleKey: "text",
|
|
144
144
|
searchTerms: [
|
|
145
145
|
"p",
|
|
@@ -162,13 +162,13 @@ zr = Vr, zr.WRAPPER_CLASSES = [
|
|
|
162
162
|
//#region src/tools/toggle/dom-builder.ts
|
|
163
163
|
var Hr = (e) => {
|
|
164
164
|
let { data: t, readOnly: n, isOpen: r, keydownHandler: i, onArrowClick: a, onBodyPlaceholderClick: o } = e, s = document.createElement("div");
|
|
165
|
-
s.className = xt, s.setAttribute(
|
|
165
|
+
s.className = xt, s.setAttribute(z.tool, Nn), s.setAttribute(U.toggleOpen, String(r)), s.setAttribute(U.toggleEmpty, "true");
|
|
166
166
|
let c = document.createElement("div");
|
|
167
|
-
c.className =
|
|
167
|
+
c.className = Ht;
|
|
168
168
|
let l = Ur(r, a, {}, e.ariaLabels), u = Gr(t, n, i);
|
|
169
169
|
c.appendChild(l), c.appendChild(u);
|
|
170
170
|
let d = Wr(o, e.bodyPlaceholderText), f = document.createElement("div");
|
|
171
|
-
return f.className =
|
|
171
|
+
return f.className = Nt, f.setAttribute(U.toggleChildren, ""), f.setAttribute(z.nestedBlocks, ""), f.setAttribute("data-blok-mutation-free", "true"), f.id = `toggle-children-${Date.now()}-${Math.random().toString(36).slice(2)}`, l.setAttribute("aria-controls", f.id), s.appendChild(c), s.appendChild(d), s.appendChild(f), {
|
|
172
172
|
wrapper: s,
|
|
173
173
|
arrowElement: l,
|
|
174
174
|
contentElement: u,
|
|
@@ -180,7 +180,7 @@ var Hr = (e) => {
|
|
|
180
180
|
expand: "Expand"
|
|
181
181
|
}) => {
|
|
182
182
|
let i = document.createElement("span");
|
|
183
|
-
i.className =
|
|
183
|
+
i.className = tn, i.setAttribute(U.toggleArrow, ""), i.setAttribute(z.mutationFree, "true"), i.setAttribute("role", "button"), i.setAttribute("tabindex", "0"), i.setAttribute("aria-label", e ? r.collapse : r.expand), i.setAttribute("aria-expanded", String(e)), n.contentEditableFalse === !0 && (i.contentEditable = "false"), i.innerHTML = Vn;
|
|
184
184
|
let a = i.querySelector("svg");
|
|
185
185
|
return a && (a.style.transition = "transform 200ms ease-in-out", e && (a.style.transform = "rotate(90deg)")), t && (i.addEventListener("click", (e) => {
|
|
186
186
|
e.stopPropagation(), t();
|
|
@@ -192,11 +192,11 @@ var Hr = (e) => {
|
|
|
192
192
|
return n.className = Gn, n.setAttribute(U.toggleBodyPlaceholder, ""), n.setAttribute("data-blok-mutation-free", "true"), n.textContent = t, e && n.addEventListener("click", e), n;
|
|
193
193
|
}, Gr = (e, t, n) => {
|
|
194
194
|
let r = document.createElement("div");
|
|
195
|
-
return r.className = G(
|
|
195
|
+
return r.className = G(kt, Mr, Pr), r.setAttribute(U.toggleContent, ""), r.contentEditable = t ? "false" : "true", r.innerHTML = e.text, n && r.addEventListener("keydown", n), r;
|
|
196
196
|
}, Kr = (e, t) => {
|
|
197
197
|
for (let n of t) {
|
|
198
198
|
if (n.holder.parentElement === e) continue;
|
|
199
|
-
let t = n.holder.closest(`[${
|
|
199
|
+
let t = n.holder.closest(`[${z.nestedBlocks}]`);
|
|
200
200
|
if (t !== null && t !== e && t.hasAttribute("data-blok-columns") && t.contains(e)) {
|
|
201
201
|
e.appendChild(n.holder);
|
|
202
202
|
continue;
|
|
@@ -242,12 +242,12 @@ var Hr = (e) => {
|
|
|
242
242
|
n.caret.setToBlock(t.id, "start");
|
|
243
243
|
return;
|
|
244
244
|
}
|
|
245
|
-
n.blocks.splitBlock(r, { text: u },
|
|
245
|
+
n.blocks.splitBlock(r, { text: u }, Nn, { text: d }, f + 1), i.text = u;
|
|
246
246
|
}, $r = async (e, t) => {
|
|
247
247
|
let { api: n, blockId: r, data: i, getContentElement: a, syncContentFromDOM: o } = e;
|
|
248
248
|
if (o(), r === void 0) return;
|
|
249
249
|
let s = a();
|
|
250
|
-
if (!s || !
|
|
250
|
+
if (!s || !qt(s)) return;
|
|
251
251
|
let c = i.text;
|
|
252
252
|
c === "" && (t.preventDefault(), await n.blocks.convert(r, "paragraph", { text: c }));
|
|
253
253
|
}, ei = (e, t, n) => {
|
|
@@ -297,7 +297,7 @@ var Hr = (e) => {
|
|
|
297
297
|
let { api: n, blockId: r, getText: i, getContentElement: a, syncContentFromDOM: o, currentLevel: s } = e;
|
|
298
298
|
if (o(), r === void 0) return;
|
|
299
299
|
let c = a();
|
|
300
|
-
if (!c || !
|
|
300
|
+
if (!c || !qt(c)) return;
|
|
301
301
|
let l = i();
|
|
302
302
|
l === "" && (t.preventDefault(), await n.blocks.convert(r, "header", {
|
|
303
303
|
text: l,
|
|
@@ -460,7 +460,7 @@ var Hr = (e) => {
|
|
|
460
460
|
let t = document.createElement(this.currentLevel.tag);
|
|
461
461
|
t.innerHTML = this._data.text || "", t.className = G(e.BASE_STYLES, this.currentLevel.styles, jr, this._data.isToggleable ? "pl-8" : "");
|
|
462
462
|
let { inlineStyles: n } = this.currentLevel;
|
|
463
|
-
n && Object.assign(t.style, n), t.setAttribute(
|
|
463
|
+
n && Object.assign(t.style, n), t.setAttribute(z.tool, "header"), t.contentEditable = this.readOnly ? "false" : "true", this._data.isToggleable && t.setAttribute(U.toggleOpen, String(this._isOpen));
|
|
464
464
|
let r = this.api.i18n.t(this.currentLevel.nameKey), i = this.resolvePlaceholderText(r);
|
|
465
465
|
return this.readOnly ? t.setAttribute("data-placeholder", i) : this.placeholderCleanup = Rr(t, i), !this.readOnly && this._data.isToggleable && t.addEventListener("keydown", this.handleKeyDown), t;
|
|
466
466
|
}
|
|
@@ -481,7 +481,7 @@ var Hr = (e) => {
|
|
|
481
481
|
let r = document.createElement("div");
|
|
482
482
|
r.className = G(Gn, "pl-8"), r.setAttribute(U.toggleBodyPlaceholder, ""), r.setAttribute("data-blok-mutation-free", "true"), r.textContent = this.api.i18n.t("tools.toggle.bodyPlaceholder"), this.readOnly || r.addEventListener("click", () => this.handleBodyPlaceholderClick()), this._bodyPlaceholderElement = r, e.appendChild(r);
|
|
483
483
|
let i = document.createElement("div");
|
|
484
|
-
return i.className = "pl-8", i.setAttribute(U.toggleChildren, ""), i.setAttribute(
|
|
484
|
+
return i.className = "pl-8", i.setAttribute(U.toggleChildren, ""), i.setAttribute(z.nestedBlocks, ""), i.setAttribute("data-blok-mutation-free", "true"), i.addEventListener("input", this.handleChildContainerInput), this._childContainerElement = i, e.appendChild(i), e;
|
|
485
485
|
}
|
|
486
486
|
createToggleWrapper() {
|
|
487
487
|
let e = this._element.parentNode;
|
|
@@ -601,8 +601,8 @@ var Hr = (e) => {
|
|
|
601
601
|
],
|
|
602
602
|
shortcut: "#".repeat(e.number)
|
|
603
603
|
})), n = {
|
|
604
|
-
1:
|
|
605
|
-
2:
|
|
604
|
+
1: fe,
|
|
605
|
+
2: Ie,
|
|
606
606
|
3: xr
|
|
607
607
|
}, r = e.DEFAULT_LEVELS.filter((e) => e.number <= 3).map((e) => ({
|
|
608
608
|
icon: n[e.number],
|
|
@@ -635,7 +635,7 @@ ii = ai, ii.BASE_STYLES = "py-[7px] px-[2px] m-0 leading-[1.3]! outline-hidden [
|
|
|
635
635
|
tag: "H1",
|
|
636
636
|
nameKey: "tools.header.heading1",
|
|
637
637
|
name: "Heading 1",
|
|
638
|
-
icon:
|
|
638
|
+
icon: Te,
|
|
639
639
|
styles: "text-3xl font-semibold mt-8 mb-px"
|
|
640
640
|
},
|
|
641
641
|
{
|
|
@@ -675,7 +675,7 @@ ii = ai, ii.BASE_STYLES = "py-[7px] px-[2px] m-0 leading-[1.3]! outline-hidden [
|
|
|
675
675
|
tag: "H6",
|
|
676
676
|
nameKey: "tools.header.heading6",
|
|
677
677
|
name: "Heading 6",
|
|
678
|
-
icon:
|
|
678
|
+
icon: Se,
|
|
679
679
|
styles: "text-sm font-semibold mt-3 mb-px"
|
|
680
680
|
}
|
|
681
681
|
];
|
|
@@ -705,7 +705,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
705
705
|
}, hi = (e) => {
|
|
706
706
|
var t;
|
|
707
707
|
let { data: n } = e, r = document.createElement("div");
|
|
708
|
-
return r.className = oi, r.setAttribute(
|
|
708
|
+
return r.className = oi, r.setAttribute(z.tool, di), r.setAttribute("data-list-style", n.style), r.setAttribute("data-list-depth", String((t = n.depth) == null ? 0 : t)), n.start !== void 0 && n.start !== 1 && r.setAttribute("data-list-start", String(n.start)), r;
|
|
709
709
|
}, gi = (e) => {
|
|
710
710
|
var t;
|
|
711
711
|
let { data: n, itemColor: r, itemSize: i, placeholder: a, markerDepth: o } = e, s = document.createElement("div");
|
|
@@ -763,7 +763,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
763
763
|
}, xi = (e, t, n) => {
|
|
764
764
|
if (!t) return e;
|
|
765
765
|
let r = n(), i = W({
|
|
766
|
-
text: r ?
|
|
766
|
+
text: r ? nn(r.innerHTML) : e.text,
|
|
767
767
|
style: e.style
|
|
768
768
|
}, e.style === "checklist" ? { checked: !!e.checked } : {});
|
|
769
769
|
return e.start !== void 0 && e.start !== 1 && (i.start = e.start), e.depth !== void 0 && e.depth > 0 && (i.depth = e.depth), i;
|
|
@@ -1355,7 +1355,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
1355
1355
|
name: "todoList",
|
|
1356
1356
|
titleKey: "todoList",
|
|
1357
1357
|
style: "checklist",
|
|
1358
|
-
icon:
|
|
1358
|
+
icon: Pe
|
|
1359
1359
|
}
|
|
1360
1360
|
], Ca = () => [
|
|
1361
1361
|
{
|
|
@@ -1395,7 +1395,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
1395
1395
|
shortcut: "1."
|
|
1396
1396
|
},
|
|
1397
1397
|
{
|
|
1398
|
-
icon:
|
|
1398
|
+
icon: Pe,
|
|
1399
1399
|
titleKey: "todoList",
|
|
1400
1400
|
data: { style: "checklist" },
|
|
1401
1401
|
name: "check-list",
|
|
@@ -1897,7 +1897,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
1897
1897
|
let n = document.createElement("td");
|
|
1898
1898
|
n.className = G(Da), n.style.borderRight = Ea, n.style.borderBottom = Ea, n.style.overflow = "hidden", n.style.overflowWrap = "break-word", n.style.height = "0", n.setAttribute(q, ""), e !== void 0 && t !== void 0 && (n.setAttribute(Ta, String(e)), n.setAttribute(J, String(t)));
|
|
1899
1899
|
let r = document.createElement("div");
|
|
1900
|
-
return r.setAttribute(Y, ""), r.setAttribute(
|
|
1900
|
+
return r.setAttribute(Y, ""), r.setAttribute(z.nestedBlocks, ""), r.style.display = "flex", r.style.flexDirection = "column", r.style.minHeight = "100%", n.appendChild(r), n;
|
|
1901
1901
|
}
|
|
1902
1902
|
}, Aa = (e) => typeof e == "object" && !!e && "blocks" in e, ja = (e) => {
|
|
1903
1903
|
let t = e.querySelector("colgroup");
|
|
@@ -2005,7 +2005,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
2005
2005
|
if (e === void 0) continue;
|
|
2006
2006
|
let i = n.blocks.getBlockByIndex(e);
|
|
2007
2007
|
if (i && !(i.parentId !== null && i.parentId !== void 0 && i.parentId !== r)) {
|
|
2008
|
-
if (i.holder.closest(`[${
|
|
2008
|
+
if (i.holder.closest(`[${z.nestedBlocks}]`)) {
|
|
2009
2009
|
s.appendChild(i.holder.cloneNode(!0));
|
|
2010
2010
|
continue;
|
|
2011
2011
|
}
|
|
@@ -2352,7 +2352,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
2352
2352
|
let a = this.api.blocks.getBlockByIndex(t);
|
|
2353
2353
|
if (!a) continue;
|
|
2354
2354
|
let o = a.parentId != null && a.parentId !== "" && a.parentId !== this.tableBlockId;
|
|
2355
|
-
if (a.holder.closest(`[${
|
|
2355
|
+
if (a.holder.closest(`[${z.nestedBlocks}]`) || o) {
|
|
2356
2356
|
let t = this.api.blocks.insert(a.name, a.preservedData, {}, this.api.blocks.getBlocksCount(), !1);
|
|
2357
2357
|
e.appendChild(t.holder), this.api.blocks.setBlockParent(t.id, this.tableBlockId), n.push(t.id), r.set(i, t.id);
|
|
2358
2358
|
continue;
|
|
@@ -2373,7 +2373,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
2373
2373
|
let o = this.api.blocks.getBlockByIndex(a);
|
|
2374
2374
|
if (!o || o.holder.contains(i)) return;
|
|
2375
2375
|
let s = o.parentId != null && o.parentId !== "" && o.parentId !== this.tableBlockId;
|
|
2376
|
-
if (o.holder.closest(`[${
|
|
2376
|
+
if (o.holder.closest(`[${z.nestedBlocks}]`) || s) return;
|
|
2377
2377
|
let c = this.api.blocks.getBlocksCount(), l = (n = (r = Array.from({ length: c - a - 1 }, (e, t) => this.api.blocks.getBlockByIndex(a + 1 + t)).find((e) => (e == null ? void 0 : e.holder.parentElement) === i)) == null ? void 0 : r.holder) == null ? null : n;
|
|
2378
2378
|
i.insertBefore(o.holder, l), this.api.blocks.setBlockParent(t, this.tableBlockId), this.stripPlaceholders(i);
|
|
2379
2379
|
}
|
|
@@ -3156,7 +3156,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
3156
3156
|
placement: "bottom",
|
|
3157
3157
|
marginTop: -16
|
|
3158
3158
|
} : { placement: "bottom" };
|
|
3159
|
-
|
|
3159
|
+
Be(t, `${e.cols}\u00D7${e.rows}`, n);
|
|
3160
3160
|
}
|
|
3161
3161
|
handlePointerDown(e, t) {
|
|
3162
3162
|
t.preventDefault();
|
|
@@ -3186,7 +3186,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
3186
3186
|
handlePointerUp(e) {
|
|
3187
3187
|
if (!this.dragState) return;
|
|
3188
3188
|
let { axis: t, pointerId: n, didDrag: r } = this.dragState, i = t === "row" ? this.addRowBtn : this.addColBtn;
|
|
3189
|
-
if (i.releasePointerCapture(n), i.removeEventListener("pointermove", this.boundPointerMove), i.removeEventListener("pointerup", this.boundPointerUp), i.removeEventListener("pointercancel", this.boundPointerCancel), document.body.style.cursor = "",
|
|
3189
|
+
if (i.releasePointerCapture(n), i.removeEventListener("pointermove", this.boundPointerMove), i.removeEventListener("pointerup", this.boundPointerUp), i.removeEventListener("pointercancel", this.boundPointerCancel), document.body.style.cursor = "", V(), this.dragState = null, !r) {
|
|
3190
3190
|
(t === "row" ? this.boundAddRowClick : this.boundAddColClick)();
|
|
3191
3191
|
return;
|
|
3192
3192
|
}
|
|
@@ -3195,7 +3195,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
3195
3195
|
handlePointerCancel(e) {
|
|
3196
3196
|
if (!this.dragState) return;
|
|
3197
3197
|
let { axis: t, didDrag: n } = this.dragState, r = t === "row" ? this.addRowBtn : this.addColBtn;
|
|
3198
|
-
r.removeEventListener("pointermove", this.boundPointerMove), r.removeEventListener("pointerup", this.boundPointerUp), r.removeEventListener("pointercancel", this.boundPointerCancel), document.body.style.cursor = "",
|
|
3198
|
+
r.removeEventListener("pointermove", this.boundPointerMove), r.removeEventListener("pointerup", this.boundPointerUp), r.removeEventListener("pointercancel", this.boundPointerCancel), document.body.style.cursor = "", V(), this.dragState = null, n && this.onDragEnd();
|
|
3199
3199
|
}
|
|
3200
3200
|
measureUnitSize(e) {
|
|
3201
3201
|
if (e === "row") {
|
|
@@ -3248,7 +3248,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
3248
3248
|
let e = document.createElement("div");
|
|
3249
3249
|
e.className = G(uo, "group/add", "items-start", "cursor-row-resize"), e.setAttribute(ao, ""), e.setAttribute("contenteditable", "false"), e.style.opacity = "0", e.style.pointerEvents = "none", e.style.position = "absolute", e.style.left = "0", e.style.bottom = "-36px", e.style.zIndex = "1", e.style.height = "32px";
|
|
3250
3250
|
let t = document.createElement("div");
|
|
3251
|
-
return t.className = G(fo), t.style.width = "100%", t.style.height = "16px", this.appendIcon(t), e.appendChild(t), fr(e,
|
|
3251
|
+
return t.className = G(fo), t.style.width = "100%", t.style.height = "16px", this.appendIcon(t), e.appendChild(t), fr(e, Zt([this.i18n.t("tools.table.clickToAddRow"), this.i18n.t("tools.table.dragToAddRemoveRows")]), {
|
|
3252
3252
|
placement: "bottom",
|
|
3253
3253
|
marginTop: -16
|
|
3254
3254
|
}), e;
|
|
@@ -3257,7 +3257,7 @@ var oi = "outline-hidden py-[7px] mt-[2px] mb-px", si = "outline-hidden pl-0.5 l
|
|
|
3257
3257
|
let e = document.createElement("div");
|
|
3258
3258
|
e.className = G(uo, "group/add", "justify-start", "cursor-col-resize"), e.setAttribute(oo, ""), e.setAttribute("contenteditable", "false"), e.style.opacity = "0", e.style.pointerEvents = "none", e.style.position = "absolute", e.style.right = "-36px", e.style.top = "0px", e.style.bottom = "0px", e.style.width = "32px";
|
|
3259
3259
|
let t = document.createElement("div");
|
|
3260
|
-
return t.className = G(fo), t.style.width = "16px", t.style.height = "100%", this.appendIcon(t), e.appendChild(t), fr(e,
|
|
3260
|
+
return t.className = G(fo), t.style.width = "16px", t.style.height = "100%", this.appendIcon(t), e.appendChild(t), fr(e, Zt([this.i18n.t("tools.table.clickToAddColumn"), this.i18n.t("tools.table.dragToAddRemoveColumns")]), { placement: "bottom" }), e;
|
|
3261
3261
|
}
|
|
3262
3262
|
appendIcon(e) {
|
|
3263
3263
|
e.insertAdjacentHTML("beforeend", Ke);
|
|
@@ -3274,7 +3274,7 @@ function ho() {
|
|
|
3274
3274
|
}
|
|
3275
3275
|
function go(e, t) {
|
|
3276
3276
|
if (e === t) return !0;
|
|
3277
|
-
let n =
|
|
3277
|
+
let n = Rt(e), r = Rt(t);
|
|
3278
3278
|
return n === null || r === null ? !1 : n[0] === r[0] && n[1] === r[1] && n[2] === r[2];
|
|
3279
3279
|
}
|
|
3280
3280
|
var _o = "var(--blok-swatch-neutral-bg)";
|
|
@@ -3631,7 +3631,7 @@ var yo = (e) => {
|
|
|
3631
3631
|
openPillPopover() {
|
|
3632
3632
|
if (this.destroyPillPopover(), !this.pill) return;
|
|
3633
3633
|
this.expandPill();
|
|
3634
|
-
let e =
|
|
3634
|
+
let e = De === "Meta" ? "⌘C" : "Ctrl+C", t = [];
|
|
3635
3635
|
if (this.onColorChange !== void 0) {
|
|
3636
3636
|
let { element: e } = yo({
|
|
3637
3637
|
i18n: this.i18n,
|
|
@@ -3664,7 +3664,7 @@ var yo = (e) => {
|
|
|
3664
3664
|
}
|
|
3665
3665
|
});
|
|
3666
3666
|
n.push({
|
|
3667
|
-
icon:
|
|
3667
|
+
icon: Ut,
|
|
3668
3668
|
title: this.i18n.t("tools.table.placement"),
|
|
3669
3669
|
name: "cellPlacement",
|
|
3670
3670
|
children: {
|
|
@@ -3718,7 +3718,7 @@ var yo = (e) => {
|
|
|
3718
3718
|
}
|
|
3719
3719
|
},
|
|
3720
3720
|
{
|
|
3721
|
-
icon:
|
|
3721
|
+
icon: wt,
|
|
3722
3722
|
title: this.i18n.t("tools.table.clearSelection"),
|
|
3723
3723
|
secondaryLabel: "Del",
|
|
3724
3724
|
closeOnActivate: !0,
|
|
@@ -3732,7 +3732,7 @@ var yo = (e) => {
|
|
|
3732
3732
|
items: s,
|
|
3733
3733
|
trigger: this.pill,
|
|
3734
3734
|
flippable: !0
|
|
3735
|
-
}), this.pillPopover.on(
|
|
3735
|
+
}), this.pillPopover.on(We.Closed, () => {
|
|
3736
3736
|
this.pillPopover !== null && (this.destroyPillPopover(), this.collapsePill());
|
|
3737
3737
|
}), this.pillPopover.show();
|
|
3738
3738
|
}
|
|
@@ -3823,13 +3823,13 @@ var yo = (e) => {
|
|
|
3823
3823
|
}
|
|
3824
3824
|
updateTooltip() {
|
|
3825
3825
|
let e = this.getTableSize();
|
|
3826
|
-
|
|
3826
|
+
Be(this.hitZone, `${e.cols}\u00D7${e.rows}`, { placement: "bottom" });
|
|
3827
3827
|
}
|
|
3828
3828
|
handleMouseEnter() {
|
|
3829
3829
|
this.updateTooltip();
|
|
3830
3830
|
}
|
|
3831
3831
|
handleMouseLeave() {
|
|
3832
|
-
this.dragState === null &&
|
|
3832
|
+
this.dragState === null && V();
|
|
3833
3833
|
}
|
|
3834
3834
|
measureUnitHeight() {
|
|
3835
3835
|
let e = this.gridEl.querySelectorAll("[data-blok-table-row]"), t = e[e.length - 1];
|
|
@@ -3870,7 +3870,7 @@ var yo = (e) => {
|
|
|
3870
3870
|
handlePointerUp(e) {
|
|
3871
3871
|
if (this.dragState === null) return;
|
|
3872
3872
|
let { didDrag: t, pointerId: n } = this.dragState;
|
|
3873
|
-
this.dragState = null,
|
|
3873
|
+
this.dragState = null, V(), this.hitZone.releasePointerCapture(n), this.hitZone.removeEventListener("pointermove", this.boundPointerMove), this.hitZone.removeEventListener("pointerup", this.boundPointerUp), t ? (document.body.style.cursor = "", document.body.style.userSelect = "", this.onDragEnd()) : this.onClickAdd ? this.onClickAdd() : (this.onAddRow(), this.onAddColumn());
|
|
3874
3874
|
}
|
|
3875
3875
|
setDisplay(e) {
|
|
3876
3876
|
this.hitZone.style.display = e ? "" : "none";
|
|
@@ -3880,7 +3880,7 @@ var yo = (e) => {
|
|
|
3880
3880
|
}
|
|
3881
3881
|
destroy() {
|
|
3882
3882
|
var e;
|
|
3883
|
-
this.hitZone.removeEventListener("mouseenter", this.boundMouseEnter), this.hitZone.removeEventListener("mouseleave", this.boundMouseLeave), this.hitZone.removeEventListener("pointerdown", this.boundPointerDown), this.hitZone.removeEventListener("pointermove", this.boundPointerMove), this.hitZone.removeEventListener("pointerup", this.boundPointerUp), (e = this.dragState) != null && e.didDrag && (document.body.style.cursor = "", document.body.style.userSelect = ""), this.dragState = null,
|
|
3883
|
+
this.hitZone.removeEventListener("mouseenter", this.boundMouseEnter), this.hitZone.removeEventListener("mouseleave", this.boundMouseLeave), this.hitZone.removeEventListener("pointerdown", this.boundPointerDown), this.hitZone.removeEventListener("pointermove", this.boundPointerMove), this.hitZone.removeEventListener("pointerup", this.boundPointerUp), (e = this.dragState) != null && e.didDrag && (document.body.style.cursor = "", document.body.style.userSelect = ""), this.dragState = null, V(), this.hitZone.remove();
|
|
3884
3884
|
}
|
|
3885
3885
|
}, Uo = "data-blok-table-resize", Wo = 50, Go = 16, Ko = class {
|
|
3886
3886
|
get enabled() {
|
|
@@ -4342,7 +4342,7 @@ var yo = (e) => {
|
|
|
4342
4342
|
let n = e === 0 ? [{
|
|
4343
4343
|
type: H.Html,
|
|
4344
4344
|
element: us({
|
|
4345
|
-
icon:
|
|
4345
|
+
icon: k,
|
|
4346
4346
|
label: t.i18n.t("tools.table.headerColumn"),
|
|
4347
4347
|
isActive: t.isHeadingColumn(),
|
|
4348
4348
|
onToggle: () => {
|
|
@@ -4360,7 +4360,7 @@ var yo = (e) => {
|
|
|
4360
4360
|
});
|
|
4361
4361
|
}
|
|
4362
4362
|
}, {
|
|
4363
|
-
icon:
|
|
4363
|
+
icon: M,
|
|
4364
4364
|
title: t.i18n.t("tools.table.insertColumnRight"),
|
|
4365
4365
|
closeOnActivate: !0,
|
|
4366
4366
|
onActivate: () => {
|
|
@@ -4391,7 +4391,7 @@ var yo = (e) => {
|
|
|
4391
4391
|
let n = e === 0 ? [{
|
|
4392
4392
|
type: H.Html,
|
|
4393
4393
|
element: us({
|
|
4394
|
-
icon:
|
|
4394
|
+
icon: I,
|
|
4395
4395
|
label: t.i18n.t("tools.table.headerRow"),
|
|
4396
4396
|
isActive: t.isHeadingRow(),
|
|
4397
4397
|
onToggle: () => {
|
|
@@ -4399,7 +4399,7 @@ var yo = (e) => {
|
|
|
4399
4399
|
}
|
|
4400
4400
|
})
|
|
4401
4401
|
}, { type: H.Separator }] : [], r = [{
|
|
4402
|
-
icon:
|
|
4402
|
+
icon: re,
|
|
4403
4403
|
title: t.i18n.t("tools.table.insertRowAbove"),
|
|
4404
4404
|
closeOnActivate: !0,
|
|
4405
4405
|
onActivate: () => {
|
|
@@ -4448,7 +4448,7 @@ var yo = (e) => {
|
|
|
4448
4448
|
trigger: a,
|
|
4449
4449
|
flippable: !0
|
|
4450
4450
|
});
|
|
4451
|
-
return o.on(
|
|
4451
|
+
return o.on(We.Closed, () => {
|
|
4452
4452
|
var e;
|
|
4453
4453
|
i.destroyPopover(), i.applyVisibleClasses(a), i.scheduleHideAll(), (e = i.onGripPopoverClose) == null || e.call(i);
|
|
4454
4454
|
}), i.hideAllGripsExcept(a), i.applyActiveClasses(a), e === "col" ? a.style.height = "16px" : a.style.width = "16px", {
|
|
@@ -5058,13 +5058,13 @@ var yo = (e) => {
|
|
|
5058
5058
|
handleCellCopy(e, t) {
|
|
5059
5059
|
let n = this.collectCellBlockData(e);
|
|
5060
5060
|
if (n.length === 0) return;
|
|
5061
|
-
let r =
|
|
5061
|
+
let r = ze(n);
|
|
5062
5062
|
t.setData("text/html", _t(r)), t.setData("text/plain", rr(r));
|
|
5063
5063
|
}
|
|
5064
5064
|
handleCellCopyViaButton(e) {
|
|
5065
5065
|
let t = this.collectCellBlockData(e);
|
|
5066
5066
|
if (t.length === 0) return;
|
|
5067
|
-
let n =
|
|
5067
|
+
let n = ze(t), r = _t(n), i = rr(n), a = new Blob([r], { type: "text/html" }), o = new Blob([i], { type: "text/plain" });
|
|
5068
5068
|
navigator.clipboard.write([new ClipboardItem({
|
|
5069
5069
|
"text/html": a,
|
|
5070
5070
|
"text/plain": o
|
|
@@ -5206,7 +5206,7 @@ var yo = (e) => {
|
|
|
5206
5206
|
handleGridPaste(e, t) {
|
|
5207
5207
|
var n, r;
|
|
5208
5208
|
if (this.host.readOnly || !e.clipboardData || e.defaultPrevented) return;
|
|
5209
|
-
let i = e.clipboardData.getData("text/html"), a =
|
|
5209
|
+
let i = e.clipboardData.getData("text/html"), a = Tt(i), o = a === null ? dr(i) : null, s = a == null ? o : a;
|
|
5210
5210
|
if (!s || o !== null && new DOMParser().parseFromString(i, "text/html").querySelectorAll("table").length > 1) return;
|
|
5211
5211
|
let c = document.activeElement;
|
|
5212
5212
|
if (!c) return;
|
|
@@ -5315,7 +5315,7 @@ var yo = (e) => {
|
|
|
5315
5315
|
constructor({ data: e, config: t, api: n, readOnly: r, block: i }) {
|
|
5316
5316
|
this.initialContent = null, this.cellBlocks = null, this.element = null, this.gridElement = null, this.scrollContainer = null, this.gripOverlay = null, this.isNewTable = !1, this.unregisterRestrictedTools = null, this.keyboardNavCleanup = null, this.setDataGeneration = 0, this.structuralOpDepth = 0, this.api = n, this.readOnly = r, this.config = t == null ? {} : t;
|
|
5317
5317
|
let a = Ja(e, this.config);
|
|
5318
|
-
this.initialContent = a.content, this.grid = new ka({ readOnly: r }), this.model = new io(a), this.blockId = i == null ? void 0 : i.id, this.block = i, this.subsystems = new Ps(this.createSubsystemHost()), this.config.restrictedTools !== void 0 && (this.unregisterRestrictedTools =
|
|
5318
|
+
this.initialContent = a.content, this.grid = new ka({ readOnly: r }), this.model = new io(a), this.blockId = i == null ? void 0 : i.id, this.block = i, this.subsystems = new Ps(this.createSubsystemHost()), this.config.restrictedTools !== void 0 && (this.unregisterRestrictedTools = mt(this.config.restrictedTools));
|
|
5319
5319
|
}
|
|
5320
5320
|
createSubsystemHost() {
|
|
5321
5321
|
let e = this;
|
|
@@ -5440,7 +5440,7 @@ var yo = (e) => {
|
|
|
5440
5440
|
}
|
|
5441
5441
|
static get toolbox() {
|
|
5442
5442
|
return {
|
|
5443
|
-
icon:
|
|
5443
|
+
icon: ee,
|
|
5444
5444
|
titleKey: "tools.table.title",
|
|
5445
5445
|
searchTerms: [
|
|
5446
5446
|
"table",
|
|
@@ -5477,7 +5477,7 @@ var yo = (e) => {
|
|
|
5477
5477
|
em: !0,
|
|
5478
5478
|
mark: (e) => {
|
|
5479
5479
|
let t = e.style, n = Array.from({ length: t.length }, (e, n) => t.item(n));
|
|
5480
|
-
for (let e of n)
|
|
5480
|
+
for (let e of n) Kt.has(e) || t.removeProperty(e);
|
|
5481
5481
|
return t.length > 0 ? { style: !0 } : {};
|
|
5482
5482
|
},
|
|
5483
5483
|
a: {
|
|
@@ -5501,7 +5501,7 @@ var yo = (e) => {
|
|
|
5501
5501
|
render() {
|
|
5502
5502
|
var e, t, n, r;
|
|
5503
5503
|
let i = document.createElement("div");
|
|
5504
|
-
i.className = G(Ls, !this.readOnly && Rs), i.setAttribute(
|
|
5504
|
+
i.className = G(Ls, !this.readOnly && Rs), i.setAttribute(z.tool, "table"), this.readOnly && i.setAttribute("data-blok-table-readonly", ""), this.isNewTable = ((e = (t = this.initialContent) == null ? void 0 : t.length) == null ? 0 : e) === 0;
|
|
5505
5505
|
let a = ((n = (r = this.initialContent) == null ? void 0 : r.length) == null ? 0 : n) > 0, o = a && this.modelHasMerges(), s = o ? this.grid.createGridFromModel(this.model) : this.createFlatGrid();
|
|
5506
5506
|
if (a && !o) {
|
|
5507
5507
|
var c;
|
|
@@ -5669,9 +5669,9 @@ var yo = (e) => {
|
|
|
5669
5669
|
var t;
|
|
5670
5670
|
n.push(e.innerHTML);
|
|
5671
5671
|
let i = (t = e.getAttribute("style")) == null ? "" : t, a = {}, o = /background-color\s*:\s*([^;]+)/i.exec(i);
|
|
5672
|
-
o != null && o[1] && (a.color =
|
|
5672
|
+
o != null && o[1] && (a.color = Ne(o[1].trim(), "bg"));
|
|
5673
5673
|
let s = (/* @__PURE__ */ RegExp("(?<![a-z-])color\\s*:\\s*([^;]+)", "i")).exec(i);
|
|
5674
|
-
s != null && s[1] && !gr(s[1].trim()) && (a.textColor =
|
|
5674
|
+
s != null && s[1] && !gr(s[1].trim()) && (a.textColor = Ne(s[1].trim(), "text")), r.push(a);
|
|
5675
5675
|
}), n.length > 0 && (a.push(n), o.push(r));
|
|
5676
5676
|
});
|
|
5677
5677
|
let s = r.querySelector("thead") !== null, c = ((t = i[0]) == null ? void 0 : t.querySelector("th")) !== null, l = s || c;
|
|
@@ -5747,7 +5747,7 @@ var yo = (e) => {
|
|
|
5747
5747
|
if (!t) return e;
|
|
5748
5748
|
let i = n();
|
|
5749
5749
|
return {
|
|
5750
|
-
text: i ?
|
|
5750
|
+
text: i ? nn(i.innerHTML) : e.text,
|
|
5751
5751
|
isOpen: r
|
|
5752
5752
|
};
|
|
5753
5753
|
}, Hs = (e, t) => {
|
|
@@ -5830,7 +5830,7 @@ var yo = (e) => {
|
|
|
5830
5830
|
onPaste(t) {
|
|
5831
5831
|
let n = t.detail;
|
|
5832
5832
|
if (!("data" in n)) return;
|
|
5833
|
-
let r = n.data, i = r.querySelector("summary"), a =
|
|
5833
|
+
let r = n.data, i = r.querySelector("summary"), a = C(i === null ? r.innerHTML : i.innerHTML, e.sanitize.text);
|
|
5834
5834
|
this._data = { text: a };
|
|
5835
5835
|
let o = this.getContentElement();
|
|
5836
5836
|
o !== null && (o.innerHTML = a);
|
|
@@ -5927,7 +5927,7 @@ var yo = (e) => {
|
|
|
5927
5927
|
return {
|
|
5928
5928
|
icon: d,
|
|
5929
5929
|
titleKey: "toggleList",
|
|
5930
|
-
name:
|
|
5930
|
+
name: Nn,
|
|
5931
5931
|
searchTerms: [
|
|
5932
5932
|
"toggle",
|
|
5933
5933
|
"collapse",
|
|
@@ -5977,11 +5977,11 @@ var yo = (e) => {
|
|
|
5977
5977
|
//#region src/tools/callout/dom-builder.ts
|
|
5978
5978
|
function Gs(e) {
|
|
5979
5979
|
let { emoji: t, readOnly: n, addEmojiLabel: r } = e, i = document.createElement("div");
|
|
5980
|
-
i.className =
|
|
5980
|
+
i.className = st;
|
|
5981
5981
|
let a = document.createElement("button");
|
|
5982
|
-
a.type = "button", a.className =
|
|
5982
|
+
a.type = "button", a.className = O, a.textContent = t || "", a.setAttribute("aria-label", t === "" ? r : t), a.setAttribute("tabindex", "0"), a.setAttribute("data-blok-testid", "callout-emoji-btn"), n && (a.disabled = !0);
|
|
5983
5983
|
let o = document.createElement("div");
|
|
5984
|
-
return o.className = ln, o.setAttribute(U.toggleChildren, ""), o.setAttribute(
|
|
5984
|
+
return o.className = ln, o.setAttribute(U.toggleChildren, ""), o.setAttribute(z.nestedBlocks, ""), o.setAttribute("data-blok-child-toolbar", ""), o.setAttribute("data-blok-mutation-free", "true"), i.appendChild(a), i.appendChild(o), {
|
|
5985
5985
|
wrapper: i,
|
|
5986
5986
|
emojiButton: a,
|
|
5987
5987
|
childContainer: o
|
|
@@ -6161,22 +6161,22 @@ var rc = {
|
|
|
6161
6161
|
callout: c,
|
|
6162
6162
|
people: et,
|
|
6163
6163
|
nature: Sr,
|
|
6164
|
-
foods:
|
|
6165
|
-
activity:
|
|
6164
|
+
foods: Le,
|
|
6165
|
+
activity: ae,
|
|
6166
6166
|
places: Ze,
|
|
6167
6167
|
objects: f,
|
|
6168
|
-
symbols:
|
|
6169
|
-
flags:
|
|
6168
|
+
symbols: P,
|
|
6169
|
+
flags: pe
|
|
6170
6170
|
}, ic = [
|
|
6171
6171
|
["callout", bt],
|
|
6172
|
-
["people",
|
|
6173
|
-
["nature",
|
|
6172
|
+
["people", en],
|
|
6173
|
+
["nature", Xt],
|
|
6174
6174
|
["foods", or],
|
|
6175
|
-
["activity",
|
|
6175
|
+
["activity", Gt],
|
|
6176
6176
|
["places", x],
|
|
6177
6177
|
["objects", xn],
|
|
6178
|
-
["symbols",
|
|
6179
|
-
["flags",
|
|
6178
|
+
["symbols", Ae],
|
|
6179
|
+
["flags", Ln]
|
|
6180
6180
|
], ac = [
|
|
6181
6181
|
"✋",
|
|
6182
6182
|
"✋🏻",
|
|
@@ -6257,28 +6257,28 @@ var lc = Yn, uc = class {
|
|
|
6257
6257
|
let a = document.createElement("div");
|
|
6258
6258
|
a.className = "relative flex-shrink-0";
|
|
6259
6259
|
let o = document.createElement("button");
|
|
6260
|
-
o.type = "button", o.setAttribute("data-emoji-picker-skin-toggle", ""), o.setAttribute("aria-label", this.i18n.t(
|
|
6260
|
+
o.type = "button", o.setAttribute("data-emoji-picker-skin-toggle", ""), o.setAttribute("aria-label", this.i18n.t(se)), o.title = this.i18n.t(se), o.className = [
|
|
6261
6261
|
"w-[28px] h-[28px] flex items-center justify-center rounded-lg",
|
|
6262
6262
|
"text-[14px] leading-none cursor-pointer select-none",
|
|
6263
6263
|
"hover:bg-neutral-100 theme-dark:hover:bg-neutral-800",
|
|
6264
6264
|
"active:scale-90 transition-all duration-100"
|
|
6265
6265
|
].join(" "), o.textContent = ac[this._skinTone], o.addEventListener("click", () => this.toggleSkinTonePopover()), this._skinToneToggle = o, a.appendChild(o), this._skinTonePopover = this.buildSkinTonePopover(), a.appendChild(this._skinTonePopover);
|
|
6266
6266
|
let c = document.createElement("button");
|
|
6267
|
-
c.type = "button", c.setAttribute("data-emoji-picker-random", ""), c.setAttribute("aria-label", this.i18n.t(
|
|
6267
|
+
c.type = "button", c.setAttribute("data-emoji-picker-random", ""), c.setAttribute("aria-label", this.i18n.t(ue)), c.className = [
|
|
6268
6268
|
"flex-shrink-0 w-[34px] h-[34px] flex items-center justify-center rounded-lg",
|
|
6269
6269
|
"text-neutral-400 hover:bg-neutral-100 hover:text-neutral-600",
|
|
6270
6270
|
"theme-dark:hover:bg-neutral-800 theme-dark:hover:text-neutral-300",
|
|
6271
6271
|
"transition-colors duration-100 cursor-pointer"
|
|
6272
|
-
].join(" "), c.innerHTML = lc, c.addEventListener("click", () => this.pickRandom()), fr(c, this.i18n.t(
|
|
6272
|
+
].join(" "), c.innerHTML = lc, c.addEventListener("click", () => this.pickRandom()), fr(c, this.i18n.t(ue), { placement: "bottom" });
|
|
6273
6273
|
let l = document.createElement("button");
|
|
6274
|
-
l.type = "button", l.setAttribute("data-emoji-picker-remove", ""), l.setAttribute("aria-label", this.i18n.t(
|
|
6274
|
+
l.type = "button", l.setAttribute("data-emoji-picker-remove", ""), l.setAttribute("aria-label", this.i18n.t(zn)), l.className = [
|
|
6275
6275
|
"flex-shrink-0 w-[34px] h-[34px] flex items-center justify-center rounded-lg",
|
|
6276
6276
|
"text-neutral-400 hover:bg-neutral-100 hover:text-neutral-600",
|
|
6277
6277
|
"theme-dark:hover:bg-neutral-800 theme-dark:hover:text-neutral-300",
|
|
6278
6278
|
"transition-colors duration-100 cursor-pointer"
|
|
6279
|
-
].join(" "), l.innerHTML =
|
|
6279
|
+
].join(" "), l.innerHTML = pt, l.addEventListener("click", () => {
|
|
6280
6280
|
this.onRemove(), this.close();
|
|
6281
|
-
}), fr(l, this.i18n.t(
|
|
6281
|
+
}), fr(l, this.i18n.t(zn), { placement: "bottom" });
|
|
6282
6282
|
let u = document.createElement("div");
|
|
6283
6283
|
u.className = "flex items-center gap-1", u.appendChild(c), u.appendChild(l), t.appendChild(n), t.appendChild(a), t.appendChild(u), e.appendChild(t);
|
|
6284
6284
|
let d = document.createElement("div");
|
|
@@ -6307,7 +6307,7 @@ var lc = Yn, uc = class {
|
|
|
6307
6307
|
].join(" "), e.hidden = !0, this._skinToneButtons = [];
|
|
6308
6308
|
for (let [t, n] of ac.entries()) {
|
|
6309
6309
|
let r = document.createElement("button");
|
|
6310
|
-
r.type = "button", r.textContent = n, r.setAttribute("aria-label", `${this.i18n.t(
|
|
6310
|
+
r.type = "button", r.textContent = n, r.setAttribute("aria-label", `${this.i18n.t(se)} ${t + 1}`), r.className = [
|
|
6311
6311
|
"w-[32px] h-[32px] flex items-center justify-center rounded-lg",
|
|
6312
6312
|
"text-[1.2rem] leading-none cursor-pointer select-none",
|
|
6313
6313
|
"hover:bg-neutral-100 theme-dark:hover:bg-neutral-700",
|
|
@@ -6434,7 +6434,7 @@ var lc = Yn, uc = class {
|
|
|
6434
6434
|
let t = document.createElement("span");
|
|
6435
6435
|
t.className = "mb-3 opacity-20 [&>svg]:w-9 [&>svg]:h-9", t.innerHTML = s;
|
|
6436
6436
|
let n = document.createElement("span");
|
|
6437
|
-
n.className = "text-[13px] font-medium", n.textContent = this.i18n.t(
|
|
6437
|
+
n.className = "text-[13px] font-medium", n.textContent = this.i18n.t(j), e.appendChild(t), e.appendChild(n), this._body.appendChild(e);
|
|
6438
6438
|
}
|
|
6439
6439
|
translateCategory(e) {
|
|
6440
6440
|
let t = rc[e];
|
|
@@ -6493,7 +6493,7 @@ var lc = Yn, uc = class {
|
|
|
6493
6493
|
//#endregion
|
|
6494
6494
|
//#region src/tools/callout/index.ts
|
|
6495
6495
|
function dc(e) {
|
|
6496
|
-
return e.isEmojiVisible === !1 ? "" : typeof e.emoji == "string" && e.emoji.length > 0 ? e.emoji :
|
|
6496
|
+
return e.isEmojiVisible === !1 ? "" : typeof e.emoji == "string" && e.emoji.length > 0 ? e.emoji : xe;
|
|
6497
6497
|
}
|
|
6498
6498
|
var fc = {
|
|
6499
6499
|
general: null,
|
|
@@ -6512,7 +6512,7 @@ var fc = {
|
|
|
6512
6512
|
normalizeData(e) {
|
|
6513
6513
|
let t = e;
|
|
6514
6514
|
return "variant" in t || "isEmojiVisible" in t ? this.normalizeLegacyData(t) : {
|
|
6515
|
-
emoji: typeof e.emoji == "string" ? e.emoji :
|
|
6515
|
+
emoji: typeof e.emoji == "string" ? e.emoji : xe,
|
|
6516
6516
|
textColor: typeof e.textColor == "string" ? e.textColor : null,
|
|
6517
6517
|
backgroundColor: typeof e.backgroundColor == "string" ? e.backgroundColor : null
|
|
6518
6518
|
};
|
|
@@ -6592,8 +6592,8 @@ var fc = {
|
|
|
6592
6592
|
this._colorPicker = e;
|
|
6593
6593
|
}
|
|
6594
6594
|
return this.syncPickerActiveColors(), [{
|
|
6595
|
-
icon:
|
|
6596
|
-
title: this.api.i18n.t(
|
|
6595
|
+
icon: en,
|
|
6596
|
+
title: this.api.i18n.t(ke),
|
|
6597
6597
|
name: "callout-edit-icon",
|
|
6598
6598
|
closeOnActivate: !0,
|
|
6599
6599
|
onActivate: () => this.openEmojiPicker()
|
|
@@ -6614,13 +6614,13 @@ var fc = {
|
|
|
6614
6614
|
syncPickerActiveColors() {
|
|
6615
6615
|
if (this._colorPicker === null) return;
|
|
6616
6616
|
let e = this._data.textColor, t = this._data.backgroundColor;
|
|
6617
|
-
this._colorPicker.setActiveColor(e === null ? null :
|
|
6617
|
+
this._colorPicker.setActiveColor(e === null ? null : St(e, "text"), "color"), this._colorPicker.setActiveColor(t === null ? null : St(t, "bg"), "background-color");
|
|
6618
6618
|
}
|
|
6619
6619
|
applyColors() {
|
|
6620
6620
|
if (this._dom === null) return;
|
|
6621
6621
|
let { textColor: e, backgroundColor: t } = this._data;
|
|
6622
|
-
if (e === null ? this._dom.wrapper.style.color = "" : this._dom.wrapper.style.color =
|
|
6623
|
-
let e =
|
|
6622
|
+
if (e === null ? this._dom.wrapper.style.color = "" : this._dom.wrapper.style.color = St(e, "text"), t !== null) {
|
|
6623
|
+
let e = St(t, "bg");
|
|
6624
6624
|
this._dom.wrapper.style.backgroundColor = e, this._dom.wrapper.style.border = "", this._dom.wrapper.style.setProperty("--blok-search-input-bg", `light-dark(color-mix(in srgb, ${e} 70%, white), color-mix(in srgb, ${e} 85%, white))`);
|
|
6625
6625
|
} else this._dom.wrapper.style.backgroundColor = "", this._dom.wrapper.style.border = "1px solid var(--blok-callout-default-border, #e5e7eb)", this._dom.wrapper.style.removeProperty("--blok-search-input-bg"), this._dom.wrapper.style.removeProperty("--blok-search-input-border");
|
|
6626
6626
|
}
|
|
@@ -6659,7 +6659,7 @@ var fc = {
|
|
|
6659
6659
|
return {
|
|
6660
6660
|
icon: Ye,
|
|
6661
6661
|
titleKey: "callout",
|
|
6662
|
-
name:
|
|
6662
|
+
name: dt,
|
|
6663
6663
|
searchTerms: [
|
|
6664
6664
|
"callout",
|
|
6665
6665
|
"note",
|
|
@@ -6680,7 +6680,7 @@ var fc = {
|
|
|
6680
6680
|
}
|
|
6681
6681
|
static get conversionConfig() {
|
|
6682
6682
|
return { import: (e) => ({
|
|
6683
|
-
emoji:
|
|
6683
|
+
emoji: xe,
|
|
6684
6684
|
textColor: null,
|
|
6685
6685
|
backgroundColor: null,
|
|
6686
6686
|
__importedText: e
|
|
@@ -6806,7 +6806,7 @@ var Cc = {
|
|
|
6806
6806
|
}
|
|
6807
6807
|
addProperty(e, t, n) {
|
|
6808
6808
|
let r = this.schema.length > 0 ? this.schema[this.schema.length - 1].position : null, i = W({
|
|
6809
|
-
id:
|
|
6809
|
+
id: On(),
|
|
6810
6810
|
name: e,
|
|
6811
6811
|
type: t,
|
|
6812
6812
|
position: Sc(r, null)
|
|
@@ -6832,7 +6832,7 @@ var Cc = {
|
|
|
6832
6832
|
createRowData(e) {
|
|
6833
6833
|
let t = this.getOrderedRows(), n = t.length > 0 ? t[t.length - 1].position : null;
|
|
6834
6834
|
return {
|
|
6835
|
-
id:
|
|
6835
|
+
id: On(),
|
|
6836
6836
|
position: Sc(n, null),
|
|
6837
6837
|
properties: e == null ? {} : e
|
|
6838
6838
|
};
|
|
@@ -6859,7 +6859,7 @@ var Cc = {
|
|
|
6859
6859
|
addView(e, t, n = {}) {
|
|
6860
6860
|
var r, i, a;
|
|
6861
6861
|
let o = [...this.views].sort((e, t) => e.position < t.position ? -1 : 1), s = o.length > 0 ? o[o.length - 1].position : null, c = {
|
|
6862
|
-
id:
|
|
6862
|
+
id: On(),
|
|
6863
6863
|
name: e,
|
|
6864
6864
|
type: t,
|
|
6865
6865
|
position: Sc(s, null),
|
|
@@ -6895,30 +6895,30 @@ var Cc = {
|
|
|
6895
6895
|
}
|
|
6896
6896
|
static createDefaultSchema() {
|
|
6897
6897
|
return [{
|
|
6898
|
-
id:
|
|
6898
|
+
id: On(),
|
|
6899
6899
|
name: "Title",
|
|
6900
6900
|
type: "title",
|
|
6901
6901
|
position: "a0"
|
|
6902
6902
|
}, {
|
|
6903
|
-
id:
|
|
6903
|
+
id: On(),
|
|
6904
6904
|
name: "Status",
|
|
6905
6905
|
type: "select",
|
|
6906
6906
|
position: "a1",
|
|
6907
6907
|
config: { options: [
|
|
6908
6908
|
{
|
|
6909
|
-
id:
|
|
6909
|
+
id: On(),
|
|
6910
6910
|
label: Cc.notStarted,
|
|
6911
6911
|
color: "gray",
|
|
6912
6912
|
position: "a0"
|
|
6913
6913
|
},
|
|
6914
6914
|
{
|
|
6915
|
-
id:
|
|
6915
|
+
id: On(),
|
|
6916
6916
|
label: Cc.inProgress,
|
|
6917
6917
|
color: "blue",
|
|
6918
6918
|
position: "a1"
|
|
6919
6919
|
},
|
|
6920
6920
|
{
|
|
6921
|
-
id:
|
|
6921
|
+
id: On(),
|
|
6922
6922
|
label: Cc.done,
|
|
6923
6923
|
color: "green",
|
|
6924
6924
|
position: "a2"
|
|
@@ -6928,7 +6928,7 @@ var Cc = {
|
|
|
6928
6928
|
}
|
|
6929
6929
|
static createDefaultView(e) {
|
|
6930
6930
|
return {
|
|
6931
|
-
id:
|
|
6931
|
+
id: On(),
|
|
6932
6932
|
name: "Board",
|
|
6933
6933
|
type: "board",
|
|
6934
6934
|
position: "a0",
|
|
@@ -7017,7 +7017,7 @@ var Cc = {
|
|
|
7017
7017
|
let t = document.createElement("div");
|
|
7018
7018
|
t.setAttribute("data-blok-database-card-actions", "");
|
|
7019
7019
|
let n = document.createElement("button");
|
|
7020
|
-
n.setAttribute("data-blok-database-edit-card", ""), n.setAttribute("data-row-id", e.id), n.setAttribute("aria-label", this.i18n.t("tools.database.editCardTitle")), n.innerHTML =
|
|
7020
|
+
n.setAttribute("data-blok-database-edit-card", ""), n.setAttribute("data-row-id", e.id), n.setAttribute("aria-label", this.i18n.t("tools.database.editCardTitle")), n.innerHTML = Ft, n.addEventListener("click", (t) => {
|
|
7021
7021
|
t.stopPropagation(), this.startCardTitleEdit(r, e.id);
|
|
7022
7022
|
});
|
|
7023
7023
|
let i = document.createElement("button");
|
|
@@ -7582,12 +7582,12 @@ var Cc = {
|
|
|
7582
7582
|
}, Ic = [
|
|
7583
7583
|
{
|
|
7584
7584
|
type: "text",
|
|
7585
|
-
icon:
|
|
7585
|
+
icon: ie,
|
|
7586
7586
|
labelKey: "tools.database.propertyTypeText"
|
|
7587
7587
|
},
|
|
7588
7588
|
{
|
|
7589
7589
|
type: "number",
|
|
7590
|
-
icon:
|
|
7590
|
+
icon: Ae,
|
|
7591
7591
|
labelKey: "tools.database.propertyTypeNumber"
|
|
7592
7592
|
},
|
|
7593
7593
|
{
|
|
@@ -7597,17 +7597,17 @@ var Cc = {
|
|
|
7597
7597
|
},
|
|
7598
7598
|
{
|
|
7599
7599
|
type: "multiSelect",
|
|
7600
|
-
icon:
|
|
7600
|
+
icon: At,
|
|
7601
7601
|
labelKey: "tools.database.propertyTypeMultiSelect"
|
|
7602
7602
|
},
|
|
7603
7603
|
{
|
|
7604
7604
|
type: "date",
|
|
7605
|
-
icon:
|
|
7605
|
+
icon: N,
|
|
7606
7606
|
labelKey: "tools.database.propertyTypeDate"
|
|
7607
7607
|
},
|
|
7608
7608
|
{
|
|
7609
7609
|
type: "checkbox",
|
|
7610
|
-
icon:
|
|
7610
|
+
icon: Pe,
|
|
7611
7611
|
labelKey: "tools.database.propertyTypeCheckbox"
|
|
7612
7612
|
},
|
|
7613
7613
|
{
|
|
@@ -7847,7 +7847,7 @@ var Cc = {
|
|
|
7847
7847
|
descriptionKey: "tools.database.viewTypeBoardDescription"
|
|
7848
7848
|
}, {
|
|
7849
7849
|
type: "list",
|
|
7850
|
-
icon:
|
|
7850
|
+
icon: ct,
|
|
7851
7851
|
labelKey: "tools.database.viewTypeList",
|
|
7852
7852
|
descriptionKey: "tools.database.viewTypeListDescription"
|
|
7853
7853
|
}], Vc = class {
|
|
@@ -7880,7 +7880,7 @@ var Cc = {
|
|
|
7880
7880
|
minWidth: "200px",
|
|
7881
7881
|
flippable: !1,
|
|
7882
7882
|
autoFocusFirstItem: !1
|
|
7883
|
-
}), this.popover.on(
|
|
7883
|
+
}), this.popover.on(We.Closed, () => {
|
|
7884
7884
|
if (this.popover !== null) {
|
|
7885
7885
|
var e;
|
|
7886
7886
|
let t = this.popover;
|
|
@@ -7914,7 +7914,7 @@ var Cc = {
|
|
|
7914
7914
|
}
|
|
7915
7915
|
}, Hc = 10, Uc = {
|
|
7916
7916
|
board: br,
|
|
7917
|
-
list:
|
|
7917
|
+
list: ct
|
|
7918
7918
|
}, Wc = class {
|
|
7919
7919
|
constructor(e) {
|
|
7920
7920
|
var t;
|
|
@@ -7976,7 +7976,7 @@ var Cc = {
|
|
|
7976
7976
|
var n, r;
|
|
7977
7977
|
return (n = (r = this.options.api) == null ? void 0 : r.i18n.t(e)) == null ? t : n;
|
|
7978
7978
|
}, i = [{
|
|
7979
|
-
icon:
|
|
7979
|
+
icon: Ft,
|
|
7980
7980
|
title: r("tools.database.renameView", "Rename"),
|
|
7981
7981
|
closeOnActivate: !0,
|
|
7982
7982
|
onActivate: () => {
|
|
@@ -8004,7 +8004,7 @@ var Cc = {
|
|
|
8004
8004
|
minWidth: "160px",
|
|
8005
8005
|
autoFocusFirstItem: !1,
|
|
8006
8006
|
items: [...i, ...a]
|
|
8007
|
-
}), this.contextPopover.on(
|
|
8007
|
+
}), this.contextPopover.on(We.Closed, () => {
|
|
8008
8008
|
if (this.contextPopover !== null) {
|
|
8009
8009
|
let e = this.contextPopover;
|
|
8010
8010
|
this.contextPopover = null, e.destroy();
|
|
@@ -8151,7 +8151,7 @@ var Cc = {
|
|
|
8151
8151
|
}
|
|
8152
8152
|
static get toolbox() {
|
|
8153
8153
|
return [{
|
|
8154
|
-
icon:
|
|
8154
|
+
icon: Mn,
|
|
8155
8155
|
titleKey: "database",
|
|
8156
8156
|
name: "database",
|
|
8157
8157
|
searchTerms: [
|
|
@@ -8459,7 +8459,7 @@ var Cc = {
|
|
|
8459
8459
|
this.deleteRowBlock(n), this.view.removeRow(r, n), this.sync.syncDeleteRow({ rowId: n });
|
|
8460
8460
|
}
|
|
8461
8461
|
}]
|
|
8462
|
-
}), this.cardMenuPopover.on(
|
|
8462
|
+
}), this.cardMenuPopover.on(We.Closed, () => {
|
|
8463
8463
|
if (t.removeAttribute("data-popover-open"), this.cardMenuPopover !== null) {
|
|
8464
8464
|
let e = this.cardMenuPopover;
|
|
8465
8465
|
this.cardMenuPopover = null, e.destroy();
|
|
@@ -8508,7 +8508,7 @@ var Cc = {
|
|
|
8508
8508
|
let a = this.model.getProperty(i);
|
|
8509
8509
|
if ((a == null ? void 0 : a.config) === void 0) return;
|
|
8510
8510
|
let o = a.config.options, s = o.length > 0 ? o[o.length - 1].position : null, c = {
|
|
8511
|
-
id:
|
|
8511
|
+
id: On(),
|
|
8512
8512
|
label: this.api.i18n.t("tools.database.columnTitlePlaceholder"),
|
|
8513
8513
|
position: wc.positionBetween(s, null)
|
|
8514
8514
|
};
|
|
@@ -8770,7 +8770,7 @@ var Cc = {
|
|
|
8770
8770
|
}
|
|
8771
8771
|
static get toolbox() {
|
|
8772
8772
|
return {
|
|
8773
|
-
icon:
|
|
8773
|
+
icon: Mt,
|
|
8774
8774
|
titleKey: "divider",
|
|
8775
8775
|
shortcut: "---",
|
|
8776
8776
|
searchTerms: [
|
|
@@ -8828,7 +8828,7 @@ var Cc = {
|
|
|
8828
8828
|
}
|
|
8829
8829
|
drawView() {
|
|
8830
8830
|
let e = document.createElement("blockquote");
|
|
8831
|
-
return e.className = G(this.api.styles.block, Yc, Nr, this._data.size === "large" ? Xc : ""), e.setAttribute(
|
|
8831
|
+
return e.className = G(this.api.styles.block, Yc, Nr, this._data.size === "large" ? Xc : ""), e.setAttribute(z.tool, "quote"), e.contentEditable = "false", this._data.text ? e.innerHTML = this._data.text : this.readOnly && (e.innerHTML = "<br>"), this.readOnly || (e.contentEditable = "true", e.addEventListener("keyup", this.onKeyUp), this.placeholderCleanup = Rr(e, this.api.i18n.t(Jc), "data-blok-placeholder-active")), e;
|
|
8832
8832
|
}
|
|
8833
8833
|
render() {
|
|
8834
8834
|
return this._element || (this._element = this.drawView()), this._element;
|
|
@@ -8838,7 +8838,7 @@ var Cc = {
|
|
|
8838
8838
|
}
|
|
8839
8839
|
save(e) {
|
|
8840
8840
|
return {
|
|
8841
|
-
text:
|
|
8841
|
+
text: nn(e.innerHTML),
|
|
8842
8842
|
size: this._data.size
|
|
8843
8843
|
};
|
|
8844
8844
|
}
|
|
@@ -8932,23 +8932,23 @@ function Qc(e) {
|
|
|
8932
8932
|
let n = [
|
|
8933
8933
|
{
|
|
8934
8934
|
mode: "code",
|
|
8935
|
-
icon:
|
|
8935
|
+
icon: je,
|
|
8936
8936
|
label: e.code
|
|
8937
8937
|
},
|
|
8938
8938
|
{
|
|
8939
8939
|
mode: "preview",
|
|
8940
|
-
icon:
|
|
8940
|
+
icon: w,
|
|
8941
8941
|
label: e.preview
|
|
8942
8942
|
},
|
|
8943
8943
|
{
|
|
8944
8944
|
mode: "split",
|
|
8945
|
-
icon:
|
|
8945
|
+
icon: be,
|
|
8946
8946
|
label: e.split
|
|
8947
8947
|
}
|
|
8948
8948
|
];
|
|
8949
8949
|
for (let { mode: e, icon: r, label: i } of n) {
|
|
8950
8950
|
let n = document.createElement("button");
|
|
8951
|
-
n.type = "button", n.className =
|
|
8951
|
+
n.type = "button", n.className = T, n.innerHTML = r, n.setAttribute("aria-label", i), n.setAttribute("aria-pressed", "false"), n.setAttribute("data-blok-testid", `code-mode-${e}`), n.setAttribute("data-mode", e), t.appendChild(n);
|
|
8952
8952
|
}
|
|
8953
8953
|
let r = document.createElement("div");
|
|
8954
8954
|
r.className = ar, r.setAttribute("data-blok-testid", "code-preview");
|
|
@@ -8963,21 +8963,21 @@ function $c(e, t) {
|
|
|
8963
8963
|
let n = Array.from(e.querySelectorAll("[data-mode]"));
|
|
8964
8964
|
for (let e of n) {
|
|
8965
8965
|
let n = e.getAttribute("data-mode") === t;
|
|
8966
|
-
e.setAttribute("aria-pressed", String(n)), e.className = n ? qe :
|
|
8966
|
+
e.setAttribute("aria-pressed", String(n)), e.className = n ? qe : T;
|
|
8967
8967
|
}
|
|
8968
8968
|
}
|
|
8969
8969
|
function el(e) {
|
|
8970
8970
|
var t, n, r;
|
|
8971
8971
|
let { code: i, languageName: a, readOnly: o, copyLabel: s, previewable: c, viewModeLabels: l } = e, u = document.createElement("div");
|
|
8972
|
-
u.className =
|
|
8972
|
+
u.className = we;
|
|
8973
8973
|
let d = document.createElement("div");
|
|
8974
|
-
d.className =
|
|
8974
|
+
d.className = Wt;
|
|
8975
8975
|
let f = document.createElement("button");
|
|
8976
|
-
f.type = "button", f.className =
|
|
8976
|
+
f.type = "button", f.className = $t, f.setAttribute("aria-haspopup", "listbox"), f.setAttribute("data-blok-testid", "code-language-btn");
|
|
8977
8977
|
let p = document.createElement("span");
|
|
8978
8978
|
p.textContent = a, f.appendChild(p);
|
|
8979
8979
|
let m = document.createElement("span");
|
|
8980
|
-
m.className = "inline-flex items-center ml-0.5 -mr-0.5", m.innerHTML =
|
|
8980
|
+
m.className = "inline-flex items-center ml-0.5 -mr-0.5", m.innerHTML = oe, f.appendChild(m);
|
|
8981
8981
|
let h = document.createElement("div");
|
|
8982
8982
|
h.className = "flex-1";
|
|
8983
8983
|
let g = !o && l ? Qc(l) : null, _ = (t = g == null ? void 0 : g.viewModeContainer) == null ? null : t, v = (n = g == null ? void 0 : g.previewElement) == null ? null : n, y = (r = g == null ? void 0 : g.splitContainer) == null ? null : r;
|
|
@@ -8985,16 +8985,16 @@ function el(e) {
|
|
|
8985
8985
|
let b = document.createElement("button");
|
|
8986
8986
|
b.type = "button", b.className = c ? _n : tr, b.innerHTML = En, b.setAttribute("aria-label", s), b.setAttribute("data-blok-testid", "code-copy-btn");
|
|
8987
8987
|
let x = document.createElement("code");
|
|
8988
|
-
x.className =
|
|
8988
|
+
x.className = Bt, x.setAttribute("data-blok-testid", "code-content"), i && (x.textContent = i), o || (x.setAttribute("contenteditable", "plaintext-only"), x.setAttribute("spellcheck", "false"));
|
|
8989
8989
|
let S = document.createElement("div");
|
|
8990
|
-
S.className =
|
|
8990
|
+
S.className = jt, S.setAttribute("aria-hidden", "true"), S.setAttribute("data-blok-testid", "code-gutter");
|
|
8991
8991
|
let C = i ? i.split("\n").length : 1;
|
|
8992
8992
|
Array.from({ length: C }, (e, t) => {
|
|
8993
8993
|
let n = document.createElement("div");
|
|
8994
8994
|
n.className = Jn, n.textContent = String(t + 1), n.setAttribute("data-line-index", String(t)), S.appendChild(n);
|
|
8995
8995
|
}), d.appendChild(f), d.appendChild(h);
|
|
8996
8996
|
let w = document.createElement("div");
|
|
8997
|
-
w.className =
|
|
8997
|
+
w.className = It, _ && w.appendChild(_), w.appendChild(b), d.appendChild(w);
|
|
8998
8998
|
let T = document.createElement("pre");
|
|
8999
8999
|
T.className = "flex-1 min-w-0", T.appendChild(x);
|
|
9000
9000
|
let E = document.createElement("div");
|
|
@@ -9958,7 +9958,7 @@ var yl = {
|
|
|
9958
9958
|
"markup-templating": () => import("./prism-markup-templating-DfRjv0mn.mjs")
|
|
9959
9959
|
}, xl = /* @__PURE__ */ new Set();
|
|
9960
9960
|
function Sl(e) {
|
|
9961
|
-
return
|
|
9961
|
+
return In.has(e);
|
|
9962
9962
|
}
|
|
9963
9963
|
async function Cl(e) {
|
|
9964
9964
|
if (xl.has(e)) return;
|
|
@@ -10107,7 +10107,7 @@ var Hl = class {
|
|
|
10107
10107
|
var r, i, a;
|
|
10108
10108
|
this._dom = null, this._lineNumbers = !0, this._picker = null, this._viewMode = "preview", this._previewContainer = null, this._highlightRafId = null, this._detectedLanguage = null, this._detectionTimeoutId = null, this._highlightCleanup = null, this._highlightedLang = null, this.api = t, this.readOnly = n, this._data = {
|
|
10109
10109
|
code: (r = e == null ? void 0 : e.code) == null ? "" : r,
|
|
10110
|
-
language: (i = e == null ? void 0 : e.language) == null ?
|
|
10110
|
+
language: (i = e == null ? void 0 : e.language) == null ? jn : i,
|
|
10111
10111
|
lineNumbers: e == null ? void 0 : e.lineNumbers
|
|
10112
10112
|
}, this._lineNumbers = (a = e == null ? void 0 : e.lineNumbers) == null ? !0 : a;
|
|
10113
10113
|
}
|
|
@@ -10116,7 +10116,7 @@ var Hl = class {
|
|
|
10116
10116
|
code: this._data.code,
|
|
10117
10117
|
languageName: this.getLanguageName(this._data.language),
|
|
10118
10118
|
readOnly: this.readOnly,
|
|
10119
|
-
copyLabel: this.api.i18n.t(
|
|
10119
|
+
copyLabel: this.api.i18n.t(Ct),
|
|
10120
10120
|
previewable: this.readOnly ? !1 : e,
|
|
10121
10121
|
viewModeLabels: this.readOnly ? void 0 : {
|
|
10122
10122
|
code: this.api.i18n.t(Tn),
|
|
@@ -10152,7 +10152,7 @@ var Hl = class {
|
|
|
10152
10152
|
requestAnimationFrame(() => {
|
|
10153
10153
|
this.syncTrailingBr(), this.updateGutter(), this.scheduleHighlight(), this.scheduleDetection();
|
|
10154
10154
|
});
|
|
10155
|
-
})), t.copyButton.addEventListener("click", () => this.copyCode()), fr(t.copyButton, this.api.i18n.t(
|
|
10155
|
+
})), t.copyButton.addEventListener("click", () => this.copyCode()), fr(t.copyButton, this.api.i18n.t(Ct), { placement: "bottom" }), this.readOnly || (this._picker = this.buildLanguagePicker(t.languageButton, t.wrapper), t.languageButton.addEventListener("click", () => {
|
|
10156
10156
|
var e;
|
|
10157
10157
|
if ((e = this._picker) != null && e.isShown) this._picker.hide();
|
|
10158
10158
|
else {
|
|
@@ -10184,7 +10184,7 @@ var Hl = class {
|
|
|
10184
10184
|
this._dom.preElement.hidden = !0, this._dom.gutterElement.hidden = !0, this._dom.previewElement.hidden = !1, n && (n.hidden = !0), this._dom.splitContainer.className = _;
|
|
10185
10185
|
break;
|
|
10186
10186
|
case "split":
|
|
10187
|
-
this._dom.preElement.hidden = !1, this._dom.gutterElement.hidden = !this._lineNumbers, this._dom.previewElement.hidden = !1, n && (n.hidden = !1), this._dom.splitContainer.className =
|
|
10187
|
+
this._dom.preElement.hidden = !1, this._dom.gutterElement.hidden = !this._lineNumbers, this._dom.previewElement.hidden = !1, n && (n.hidden = !1), this._dom.splitContainer.className = He;
|
|
10188
10188
|
break;
|
|
10189
10189
|
}
|
|
10190
10190
|
}
|
|
@@ -10211,7 +10211,7 @@ var Hl = class {
|
|
|
10211
10211
|
let i = this._data.language;
|
|
10212
10212
|
return this._data = {
|
|
10213
10213
|
code: (t = e.code) == null ? "" : t,
|
|
10214
|
-
language: (n = e.language) == null ?
|
|
10214
|
+
language: (n = e.language) == null ? jn : n,
|
|
10215
10215
|
lineNumbers: e.lineNumbers
|
|
10216
10216
|
}, this._dom ? (this._dom.codeElement.textContent = this._data.code, this.syncTrailingBr(), this._lineNumbers = (r = e.lineNumbers) == null ? !0 : r, this._dom.gutterElement.hidden = !this._lineNumbers, this.updateGutter(), e.language === i ? (this._viewMode === "preview" || this._viewMode === "split") && this.renderPreview() : this.applyLanguageChange(this._data.language), this.highlightCode(), !0) : !0;
|
|
10217
10217
|
}
|
|
@@ -10235,7 +10235,7 @@ var Hl = class {
|
|
|
10235
10235
|
e && (i.push({
|
|
10236
10236
|
title: e.name,
|
|
10237
10237
|
secondaryLabel: "auto",
|
|
10238
|
-
icon:
|
|
10238
|
+
icon: le,
|
|
10239
10239
|
onActivate: () => this.setLanguage(e.id),
|
|
10240
10240
|
closeOnActivate: !0,
|
|
10241
10241
|
isActive: () => this._data.language === e.id
|
|
@@ -10243,12 +10243,12 @@ var Hl = class {
|
|
|
10243
10243
|
}
|
|
10244
10244
|
return i.push(...bn.map((t) => ({
|
|
10245
10245
|
title: t.name,
|
|
10246
|
-
trailingIcon: t.id === e ?
|
|
10246
|
+
trailingIcon: t.id === e ? Rn : void 0,
|
|
10247
10247
|
onActivate: () => this.setLanguage(t.id),
|
|
10248
10248
|
closeOnActivate: !0
|
|
10249
10249
|
}))), [{
|
|
10250
10250
|
icon: n,
|
|
10251
|
-
title: this.api.i18n.t(
|
|
10251
|
+
title: this.api.i18n.t(Yt),
|
|
10252
10252
|
name: "code-language",
|
|
10253
10253
|
children: { items: i }
|
|
10254
10254
|
}];
|
|
@@ -10283,7 +10283,7 @@ var Hl = class {
|
|
|
10283
10283
|
e && (r.push({
|
|
10284
10284
|
title: e.name,
|
|
10285
10285
|
name: e.id,
|
|
10286
|
-
icon:
|
|
10286
|
+
icon: le,
|
|
10287
10287
|
toggle: "language",
|
|
10288
10288
|
isActive: () => this._data.language === e.id,
|
|
10289
10289
|
closeOnActivate: !0,
|
|
@@ -10293,7 +10293,7 @@ var Hl = class {
|
|
|
10293
10293
|
return r.push(...bn.map((t) => ({
|
|
10294
10294
|
title: t.name,
|
|
10295
10295
|
name: t.id,
|
|
10296
|
-
trailingIcon: t.id === e ?
|
|
10296
|
+
trailingIcon: t.id === e ? Rn : void 0,
|
|
10297
10297
|
toggle: "language",
|
|
10298
10298
|
closeOnActivate: !0,
|
|
10299
10299
|
onActivate: () => this.setLanguage(t.id)
|
|
@@ -10306,7 +10306,7 @@ var Hl = class {
|
|
|
10306
10306
|
leftAlignElement: t,
|
|
10307
10307
|
searchable: !0,
|
|
10308
10308
|
width: "200px",
|
|
10309
|
-
messages: { search: this.api.i18n.t(
|
|
10309
|
+
messages: { search: this.api.i18n.t(Dt) }
|
|
10310
10310
|
});
|
|
10311
10311
|
}
|
|
10312
10312
|
getLanguageName(e) {
|
|
@@ -10566,7 +10566,7 @@ function su(e) {
|
|
|
10566
10566
|
let b = document.createElement("div");
|
|
10567
10567
|
b.className = "blok-media-empty__drop-overlay", b.setAttribute("aria-hidden", "true");
|
|
10568
10568
|
let x = document.createElement("div");
|
|
10569
|
-
x.className = "blok-media-empty__drop-inner", x.innerHTML = `<span class="blok-media-empty__drop-icon">${
|
|
10569
|
+
x.className = "blok-media-empty__drop-inner", x.innerHTML = `<span class="blok-media-empty__drop-icon">${R}</span><span>${r.dropToUpload}</span>`, b.appendChild(x);
|
|
10570
10570
|
let S = document.createElement("div");
|
|
10571
10571
|
S.className = "blok-media-empty__error", S.setAttribute("data-role", "error"), S.hidden = !0;
|
|
10572
10572
|
let C = document.createElement("input");
|
|
@@ -10582,7 +10582,7 @@ function su(e) {
|
|
|
10582
10582
|
let t = document.createElement("div");
|
|
10583
10583
|
t.className = "blok-media-empty__primary";
|
|
10584
10584
|
let n = document.createElement("button");
|
|
10585
|
-
n.type = "button", n.className = "blok-media-empty__choose", n.setAttribute("data-action", "choose-file"), n.innerHTML = `<span class="blok-media-empty__choose-icon">${
|
|
10585
|
+
n.type = "button", n.className = "blok-media-empty__choose", n.setAttribute("data-action", "choose-file"), n.innerHTML = `<span class="blok-media-empty__choose-icon">${Fe}</span><span>${r.chooseFile}</span>`, n.addEventListener("click", (e) => {
|
|
10586
10586
|
e.stopPropagation(), C.click();
|
|
10587
10587
|
});
|
|
10588
10588
|
let i = document.createElement("span");
|
|
@@ -10596,7 +10596,7 @@ function su(e) {
|
|
|
10596
10596
|
let t = document.createElement("div");
|
|
10597
10597
|
t.className = "blok-media-empty__embed-bar", t.setAttribute("data-valid", "false");
|
|
10598
10598
|
let n = document.createElement("span");
|
|
10599
|
-
n.className = "blok-media-empty__embed-icon", n.setAttribute("aria-hidden", "true"), n.innerHTML =
|
|
10599
|
+
n.className = "blok-media-empty__embed-icon", n.setAttribute("aria-hidden", "true"), n.innerHTML = ce;
|
|
10600
10600
|
let i = document.createElement("input");
|
|
10601
10601
|
i.type = "url", i.className = "blok-media-empty__embed-input", i.placeholder = r.urlPlaceholder, i.setAttribute("aria-label", r.urlAria), i.autocomplete = "off", i.spellcheck = !1;
|
|
10602
10602
|
let a = document.createElement("button");
|
|
@@ -10750,7 +10750,7 @@ function pu(e) {
|
|
|
10750
10750
|
let a = (t = e.variant) == null ? "broken" : t;
|
|
10751
10751
|
i.setAttribute("data-variant", a);
|
|
10752
10752
|
let o = document.createElement("div");
|
|
10753
|
-
o.className = "blok-image-error__icon", o.setAttribute("aria-hidden", "true"), o.innerHTML = a === "upload" ?
|
|
10753
|
+
o.className = "blok-image-error__icon", o.setAttribute("aria-hidden", "true"), o.innerHTML = a === "upload" ? nt : tt;
|
|
10754
10754
|
let s = document.createElement("div");
|
|
10755
10755
|
s.className = "blok-image-error__body";
|
|
10756
10756
|
let c = document.createElement("div");
|
|
@@ -10897,7 +10897,7 @@ var Au = {
|
|
|
10897
10897
|
right: "right"
|
|
10898
10898
|
}, ju = {
|
|
10899
10899
|
left: Cr,
|
|
10900
|
-
center:
|
|
10900
|
+
center: Re,
|
|
10901
10901
|
right: p
|
|
10902
10902
|
};
|
|
10903
10903
|
function Mu(e, t, n, r) {
|
|
@@ -11317,7 +11317,7 @@ function Ju(e) {
|
|
|
11317
11317
|
function Yu(e) {
|
|
11318
11318
|
let t = document.createElement("div");
|
|
11319
11319
|
t.setAttribute("data-role", "lightbox-toolbar"), t.setAttribute("role", "toolbar"), t.setAttribute("aria-label", X(e.i18n, "tools.image.previewControls")), t.className = "blok-image-lightbox__bar", t.addEventListener("click", (e) => e.stopPropagation());
|
|
11320
|
-
let n =
|
|
11320
|
+
let n = ut, r = L, i = Lt, a = ce, o = Vt;
|
|
11321
11321
|
return $u(t, {
|
|
11322
11322
|
action: "zoom-out",
|
|
11323
11323
|
label: X(e.i18n, "tools.image.zoomOut"),
|
|
@@ -11364,7 +11364,7 @@ function Zu(e) {
|
|
|
11364
11364
|
action: "lightbox-prev",
|
|
11365
11365
|
label: X(e.i18n, "tools.image.previousImage"),
|
|
11366
11366
|
shortcut: "←",
|
|
11367
|
-
html:
|
|
11367
|
+
html: lt,
|
|
11368
11368
|
onClick: e.onPrev,
|
|
11369
11369
|
tooltipPlacement: "right"
|
|
11370
11370
|
}), $u(t, {
|
|
@@ -11387,7 +11387,7 @@ function $u(e, t) {
|
|
|
11387
11387
|
var n;
|
|
11388
11388
|
let r = document.createElement("button");
|
|
11389
11389
|
r.type = "button", r.setAttribute("data-action", t.action), r.setAttribute("aria-label", t.label), r.className = t.extraClass ? `blok-image-lightbox__btn ${t.extraClass}` : "blok-image-lightbox__btn", r.innerHTML = t.html, fr(r, Qu(t.label, t.shortcut), { placement: (n = t.tooltipPlacement) == null ? "top" : n }), r.addEventListener("click", (e) => {
|
|
11390
|
-
e.stopPropagation(),
|
|
11390
|
+
e.stopPropagation(), V(), t.onClick();
|
|
11391
11391
|
}), e.appendChild(r);
|
|
11392
11392
|
}
|
|
11393
11393
|
function ed(e, t, n, r = 80) {
|
|
@@ -11405,7 +11405,7 @@ function rd(e) {
|
|
|
11405
11405
|
action: "caption-toggle",
|
|
11406
11406
|
label: X(e.i18n, "tools.image.toggleCaption"),
|
|
11407
11407
|
pressed: e.state.captionVisible,
|
|
11408
|
-
icon:
|
|
11408
|
+
icon: A,
|
|
11409
11409
|
onClick: e.onToggleCaption
|
|
11410
11410
|
}), od(t, {
|
|
11411
11411
|
action: "replace",
|
|
@@ -11420,12 +11420,12 @@ function rd(e) {
|
|
|
11420
11420
|
}), od(t, {
|
|
11421
11421
|
action: "fullscreen",
|
|
11422
11422
|
label: X(e.i18n, "tools.image.viewFullscreen"),
|
|
11423
|
-
icon:
|
|
11423
|
+
icon: Ot,
|
|
11424
11424
|
onClick: e.onFullscreen
|
|
11425
11425
|
}), od(t, {
|
|
11426
11426
|
action: "download",
|
|
11427
11427
|
label: X(e.i18n, "tools.image.downloadOriginal"),
|
|
11428
|
-
icon:
|
|
11428
|
+
icon: Lt,
|
|
11429
11429
|
onClick: e.onDownload
|
|
11430
11430
|
}), ad(t);
|
|
11431
11431
|
let n = X(e.i18n, "tools.image.moreOptions"), r = document.createElement("button");
|
|
@@ -11449,7 +11449,7 @@ function id(e, t) {
|
|
|
11449
11449
|
]) {
|
|
11450
11450
|
let n = Nu(t.i18n, e), i = document.createElement("button");
|
|
11451
11451
|
i.type = "button", i.setAttribute("data-action", `align-${e}`), i.setAttribute("aria-label", n), i.setAttribute("aria-pressed", r === e ? "true" : "false"), i.innerHTML = ju[e], fr(i, n), i.addEventListener("click", (n) => {
|
|
11452
|
-
n.stopPropagation(),
|
|
11452
|
+
n.stopPropagation(), V(), d(), t.onAlign(e);
|
|
11453
11453
|
}), o.appendChild(i);
|
|
11454
11454
|
}
|
|
11455
11455
|
n.appendChild(o), e.appendChild(n);
|
|
@@ -11461,7 +11461,7 @@ function id(e, t) {
|
|
|
11461
11461
|
t && n.contains(t) || d();
|
|
11462
11462
|
}, l = () => n.closest("[data-blok-tool=\"image\"]"), u = () => {
|
|
11463
11463
|
var e;
|
|
11464
|
-
o.hidden && (o.hidden = !1, o.setAttribute("data-blok-popover-opened", "true"), (e = l()) == null || e.setAttribute("data-align-open", "true"), a.setAttribute("aria-expanded", "true"),
|
|
11464
|
+
o.hidden && (o.hidden = !1, o.setAttribute("data-blok-popover-opened", "true"), (e = l()) == null || e.setAttribute("data-align-open", "true"), a.setAttribute("aria-expanded", "true"), V(), document.addEventListener("keydown", s), document.addEventListener("mousedown", c));
|
|
11465
11465
|
};
|
|
11466
11466
|
function d() {
|
|
11467
11467
|
var e;
|
|
@@ -11478,7 +11478,7 @@ function ad(e) {
|
|
|
11478
11478
|
function od(e, t) {
|
|
11479
11479
|
let n = document.createElement("button");
|
|
11480
11480
|
n.type = "button", n.setAttribute("aria-label", t.label), n.setAttribute("data-action", t.action), t.pressed !== void 0 && n.setAttribute("aria-pressed", t.pressed ? "true" : "false"), n.innerHTML = t.icon, fr(n, t.label), n.addEventListener("click", (e) => {
|
|
11481
|
-
e.stopPropagation(),
|
|
11481
|
+
e.stopPropagation(), V(), t.onClick();
|
|
11482
11482
|
}), e.appendChild(n);
|
|
11483
11483
|
}
|
|
11484
11484
|
//#endregion
|
|
@@ -11959,14 +11959,14 @@ function Ld(e) {
|
|
|
11959
11959
|
let s = document.createElement("span");
|
|
11960
11960
|
s.className = "blok-image-uploading__filename", s.setAttribute("data-role", "filename"), s.textContent = e.fileName, s.title = e.fileName;
|
|
11961
11961
|
let c = document.createElement("button");
|
|
11962
|
-
c.type = "button", c.className = "blok-image-uploading__cancel", c.setAttribute("data-action", "cancel"), c.setAttribute("aria-label", X(e.i18n, "tools.image.cancelUpload")), c.innerHTML =
|
|
11962
|
+
c.type = "button", c.className = "blok-image-uploading__cancel", c.setAttribute("data-action", "cancel"), c.setAttribute("aria-label", X(e.i18n, "tools.image.cancelUpload")), c.innerHTML = pt, c.addEventListener("click", () => {
|
|
11963
11963
|
var t;
|
|
11964
11964
|
(t = e.onCancel) == null || t.call(e);
|
|
11965
11965
|
}), a.append(o, s, c);
|
|
11966
11966
|
let l = document.createElement("div");
|
|
11967
11967
|
l.className = "blok-image-uploading__panel";
|
|
11968
11968
|
let u = document.createElement("span");
|
|
11969
|
-
u.className = "blok-image-uploading__tile", u.setAttribute("aria-hidden", "true"), u.innerHTML =
|
|
11969
|
+
u.className = "blok-image-uploading__tile", u.setAttribute("aria-hidden", "true"), u.innerHTML = me;
|
|
11970
11970
|
let d = document.createElement("div");
|
|
11971
11971
|
d.className = "blok-image-uploading__content";
|
|
11972
11972
|
let f = document.createElement("div");
|
|
@@ -12177,7 +12177,7 @@ var ef = class {
|
|
|
12177
12177
|
}
|
|
12178
12178
|
static get toolbox() {
|
|
12179
12179
|
return {
|
|
12180
|
-
icon:
|
|
12180
|
+
icon: me,
|
|
12181
12181
|
titleKey: "image",
|
|
12182
12182
|
searchTerms: [
|
|
12183
12183
|
"image",
|
|
@@ -12375,19 +12375,19 @@ var ef = class {
|
|
|
12375
12375
|
{
|
|
12376
12376
|
value: "left",
|
|
12377
12377
|
title: r.t("tools.image.alignmentLeft"),
|
|
12378
|
-
icon:
|
|
12378
|
+
icon: D
|
|
12379
12379
|
},
|
|
12380
12380
|
{
|
|
12381
12381
|
value: "center",
|
|
12382
12382
|
title: r.t("tools.image.alignmentCenter"),
|
|
12383
|
-
icon:
|
|
12383
|
+
icon: Ee
|
|
12384
12384
|
},
|
|
12385
12385
|
{
|
|
12386
12386
|
value: "right",
|
|
12387
12387
|
title: r.t("tools.image.alignmentRight"),
|
|
12388
|
-
icon:
|
|
12388
|
+
icon: F
|
|
12389
12389
|
}
|
|
12390
|
-
], s = (t = (n = o.find((e) => e.value === i)) == null ? void 0 : n.icon) == null ? o[1].icon : t, c =
|
|
12390
|
+
], s = (t = (n = o.find((e) => e.value === i)) == null ? void 0 : n.icon) == null ? o[1].icon : t, c = B, l = Ce, u = Wn, d = yr, f = nr;
|
|
12391
12391
|
return [
|
|
12392
12392
|
{
|
|
12393
12393
|
icon: s,
|
|
@@ -13022,12 +13022,12 @@ var yf = new Set([
|
|
|
13022
13022
|
pdf: ur,
|
|
13023
13023
|
document: v,
|
|
13024
13024
|
spreadsheet: Je,
|
|
13025
|
-
presentation:
|
|
13026
|
-
archive:
|
|
13025
|
+
presentation: E,
|
|
13026
|
+
archive: Ue,
|
|
13027
13027
|
audio: gn,
|
|
13028
|
-
video:
|
|
13029
|
-
image:
|
|
13030
|
-
code:
|
|
13028
|
+
video: te,
|
|
13029
|
+
image: me,
|
|
13030
|
+
code: je,
|
|
13031
13031
|
text: hr,
|
|
13032
13032
|
generic: hr
|
|
13033
13033
|
};
|
|
@@ -13802,7 +13802,7 @@ function $p(e) {
|
|
|
13802
13802
|
let c = document.createElement("span");
|
|
13803
13803
|
c.className = "blok-file-preview-title-text", e.fileName && (c.textContent = e.fileName), o.append(s, c);
|
|
13804
13804
|
let l = document.createElement("button");
|
|
13805
|
-
l.type = "button", l.className = "blok-file-preview-close", l.setAttribute("data-action", "close-preview"), l.setAttribute("aria-label", e.labels.close), l.innerHTML =
|
|
13805
|
+
l.type = "button", l.className = "blok-file-preview-close", l.setAttribute("data-action", "close-preview"), l.setAttribute("aria-label", e.labels.close), l.innerHTML = wt;
|
|
13806
13806
|
let u = document.createElement("div");
|
|
13807
13807
|
u.className = "blok-file-preview-actions";
|
|
13808
13808
|
let d = _f({
|
|
@@ -13812,7 +13812,7 @@ function $p(e) {
|
|
|
13812
13812
|
}), f = d === "pdf" ? Nf(e.url) : null;
|
|
13813
13813
|
if (f !== null) {
|
|
13814
13814
|
let t = document.createElement("a");
|
|
13815
|
-
t.className = "blok-file-preview-open", t.setAttribute("data-action", "preview-open-tab"), t.href = f, t.target = "_blank", t.rel = "noopener noreferrer", e.labels.openInNewTab && (t.setAttribute("aria-label", e.labels.openInNewTab), t.title = e.labels.openInNewTab), t.innerHTML =
|
|
13815
|
+
t.className = "blok-file-preview-open", t.setAttribute("data-action", "preview-open-tab"), t.href = f, t.target = "_blank", t.rel = "noopener noreferrer", e.labels.openInNewTab && (t.setAttribute("aria-label", e.labels.openInNewTab), t.title = e.labels.openInNewTab), t.innerHTML = ft, u.appendChild(t);
|
|
13816
13816
|
}
|
|
13817
13817
|
u.appendChild(l), a.append(o, u);
|
|
13818
13818
|
let p = Jp(e, d == null ? "text" : d);
|
|
@@ -13893,7 +13893,7 @@ var tm = /\.(png|jpe?g|gif|webp|svg)(?:[?#]|$)/i, nm = /\.(mp4|webm|ogg|mov|m4v)
|
|
|
13893
13893
|
let n = this.api.i18n, r = (e = this.data.captionVisible) == null ? ((t = this.data.caption) == null ? "" : t) !== "" : e;
|
|
13894
13894
|
return [
|
|
13895
13895
|
{
|
|
13896
|
-
icon:
|
|
13896
|
+
icon: B,
|
|
13897
13897
|
title: n.t("tools.file.toggleCaption"),
|
|
13898
13898
|
name: "file-caption",
|
|
13899
13899
|
isActive: r,
|
|
@@ -13901,7 +13901,7 @@ var tm = /\.(png|jpe?g|gif|webp|svg)(?:[?#]|$)/i, nm = /\.(mp4|webm|ogg|mov|m4v)
|
|
|
13901
13901
|
onActivate: () => this.toggleCaption()
|
|
13902
13902
|
},
|
|
13903
13903
|
{
|
|
13904
|
-
icon:
|
|
13904
|
+
icon: Ce,
|
|
13905
13905
|
title: n.t("tools.file.replace"),
|
|
13906
13906
|
name: "file-replace",
|
|
13907
13907
|
closeOnActivate: !0,
|
|
@@ -14169,7 +14169,7 @@ function dm(e, t) {
|
|
|
14169
14169
|
var e;
|
|
14170
14170
|
if (!t.editable) return;
|
|
14171
14171
|
let n = document.createElement("button");
|
|
14172
|
-
return n.type = "button", n.className = "blok-audio-cover__change", n.setAttribute("data-role", "audio-cover-change"), n.setAttribute("aria-label", (e = t.coverChangeLabel) == null ? "Change cover" : e), n.innerHTML =
|
|
14172
|
+
return n.type = "button", n.className = "blok-audio-cover__change", n.setAttribute("data-role", "audio-cover-change"), n.setAttribute("aria-label", (e = t.coverChangeLabel) == null ? "Change cover" : e), n.innerHTML = me, i.appendChild(n), n;
|
|
14173
14173
|
})(), s = um("audio-title", e.title, t.editable, t.titlePlaceholder);
|
|
14174
14174
|
s.className = "blok-audio-title";
|
|
14175
14175
|
let c = um("audio-artist", e.artist, t.editable, t.artistPlaceholder);
|
|
@@ -14379,7 +14379,7 @@ function Tm({ media: e, figure: t, data: n, storage: r, onLoopChange: i }) {
|
|
|
14379
14379
|
1,
|
|
14380
14380
|
1.5,
|
|
14381
14381
|
2
|
|
14382
|
-
], O = .25, k = .05, A = (e) => Math.min(2, Math.max(O, Math.round(e * 100) / 100)), te = (e) => `${e}×`, j = wm("audio-speed", "Playback speed",
|
|
14382
|
+
], O = .25, k = .05, A = (e) => Math.min(2, Math.max(O, Math.round(e * 100) / 100)), te = (e) => `${e}×`, j = wm("audio-speed", "Playback speed", Et || pr);
|
|
14383
14383
|
j.setAttribute("aria-haspopup", "menu"), j.setAttribute("aria-expanded", "false");
|
|
14384
14384
|
let M = document.createElement("div");
|
|
14385
14385
|
M.className = "blok-audio-controls__speed-menu", M.setAttribute("role", "menu"), M.hidden = !0;
|
|
@@ -14388,7 +14388,7 @@ function Tm({ media: e, figure: t, data: n, storage: r, onLoopChange: i }) {
|
|
|
14388
14388
|
let ne = (e, t) => {
|
|
14389
14389
|
let n = document.createElement("button");
|
|
14390
14390
|
return n.type = "button", n.className = "blok-audio-controls__speed-step", n.setAttribute("aria-label", t), n.innerHTML = e, n;
|
|
14391
|
-
}, P = ne(
|
|
14391
|
+
}, P = ne(An, "Decrease playback speed"), re = ne(Ke, "Increase playback speed"), F = document.createElement("input");
|
|
14392
14392
|
F.type = "range", F.className = "blok-audio-controls__speed-slider", F.min = "0.25", F.max = "2", F.step = "0.05", F.value = String(f.selectedRate), F.setAttribute("aria-label", "Playback speed");
|
|
14393
14393
|
let ie = (e) => `${(e - O) / (2 - O) * 100}%`;
|
|
14394
14394
|
F.style.setProperty("--blok-audio-speed-pct", ie(f.selectedRate));
|
|
@@ -14417,7 +14417,7 @@ function Tm({ media: e, figure: t, data: n, storage: r, onLoopChange: i }) {
|
|
|
14417
14417
|
e.stopPropagation(), M.hidden ? ce() : le();
|
|
14418
14418
|
};
|
|
14419
14419
|
j.addEventListener("click", de);
|
|
14420
|
-
let R = wm("audio-loop", "Loop",
|
|
14420
|
+
let R = wm("audio-loop", "Loop", Jt);
|
|
14421
14421
|
R.setAttribute("aria-pressed", String(a.loop));
|
|
14422
14422
|
let fe = document.createElement("div");
|
|
14423
14423
|
fe.className = "blok-audio-controls__volume-wrap", fe.append(v, y), u.append(d, h, fe, se, R);
|
|
@@ -14425,16 +14425,16 @@ function Tm({ media: e, figure: t, data: n, storage: r, onLoopChange: i }) {
|
|
|
14425
14425
|
f.playing ? a.pause() : a.play();
|
|
14426
14426
|
}, me = () => {
|
|
14427
14427
|
a.muted = !a.muted, x(), w();
|
|
14428
|
-
},
|
|
14428
|
+
}, z = () => {
|
|
14429
14429
|
let e = Number(y.value);
|
|
14430
14430
|
a.volume = e, a.muted = e === 0, x(), w();
|
|
14431
|
-
},
|
|
14431
|
+
}, he = () => {
|
|
14432
14432
|
a.loop = !a.loop, R.setAttribute("aria-pressed", String(a.loop)), i == null || i(a.loop);
|
|
14433
|
-
},
|
|
14433
|
+
}, ge = () => m(!0), _e = () => m(!1), ve = () => {
|
|
14434
14434
|
_(), E();
|
|
14435
|
-
},
|
|
14435
|
+
}, ye = () => {
|
|
14436
14436
|
_(), D();
|
|
14437
|
-
},
|
|
14437
|
+
}, be = () => x(), xe = .05, Se = (e) => {
|
|
14438
14438
|
var t, n;
|
|
14439
14439
|
if (!((t = e.target) == null || (n = t.matches) == null) && n.call(t, "[contenteditable=\"true\"]") || e.metaKey || e.ctrlKey || e.altKey) return;
|
|
14440
14440
|
let r = Number.isFinite(a.duration) ? a.duration : 0;
|
|
@@ -14454,18 +14454,18 @@ function Tm({ media: e, figure: t, data: n, storage: r, onLoopChange: i }) {
|
|
|
14454
14454
|
e.preventDefault(), me();
|
|
14455
14455
|
break;
|
|
14456
14456
|
case "ArrowUp":
|
|
14457
|
-
e.preventDefault(), a.volume = Math.min(1, a.volume +
|
|
14457
|
+
e.preventDefault(), a.volume = Math.min(1, a.volume + xe), x(), w();
|
|
14458
14458
|
break;
|
|
14459
14459
|
case "ArrowDown":
|
|
14460
|
-
e.preventDefault(), a.volume = Math.max(0, a.volume -
|
|
14460
|
+
e.preventDefault(), a.volume = Math.max(0, a.volume - xe), x(), w();
|
|
14461
14461
|
break;
|
|
14462
14462
|
default: e.key.length === 1 && e.key >= "0" && e.key <= "9" && r > 0 && (e.preventDefault(), a.currentTime = r * Number(e.key) / 10);
|
|
14463
14463
|
}
|
|
14464
14464
|
};
|
|
14465
|
-
return d.addEventListener("click", pe), v.addEventListener("click", me), y.addEventListener("input",
|
|
14465
|
+
return d.addEventListener("click", pe), v.addEventListener("click", me), y.addEventListener("input", z), R.addEventListener("click", he), a.addEventListener("play", ge), a.addEventListener("pause", _e), a.addEventListener("timeupdate", ve), a.addEventListener("loadedmetadata", ye), a.addEventListener("volumechange", be), t.addEventListener("keydown", Se), {
|
|
14466
14466
|
element: u,
|
|
14467
14467
|
destroy: () => {
|
|
14468
|
-
p.destroy(), le(), d.removeEventListener("click", pe), v.removeEventListener("click", me), y.removeEventListener("input",
|
|
14468
|
+
p.destroy(), le(), d.removeEventListener("click", pe), v.removeEventListener("click", me), y.removeEventListener("input", z), R.removeEventListener("click", he), j.removeEventListener("click", de), F.removeEventListener("input", I), a.removeEventListener("play", ge), a.removeEventListener("pause", _e), a.removeEventListener("timeupdate", ve), a.removeEventListener("loadedmetadata", ye), a.removeEventListener("volumechange", be), t.removeEventListener("keydown", Se), M.remove(), u.remove();
|
|
14469
14469
|
}
|
|
14470
14470
|
};
|
|
14471
14471
|
}
|
|
@@ -14753,17 +14753,17 @@ var Qm = class {
|
|
|
14753
14753
|
{
|
|
14754
14754
|
value: "left",
|
|
14755
14755
|
title: Z(r, "tools.audio.alignmentLeft", "Align left"),
|
|
14756
|
-
icon:
|
|
14756
|
+
icon: D
|
|
14757
14757
|
},
|
|
14758
14758
|
{
|
|
14759
14759
|
value: "center",
|
|
14760
14760
|
title: Z(r, "tools.audio.alignmentCenter", "Align center"),
|
|
14761
|
-
icon:
|
|
14761
|
+
icon: Ee
|
|
14762
14762
|
},
|
|
14763
14763
|
{
|
|
14764
14764
|
value: "right",
|
|
14765
14765
|
title: Z(r, "tools.audio.alignmentRight", "Align right"),
|
|
14766
|
-
icon:
|
|
14766
|
+
icon: F
|
|
14767
14767
|
}
|
|
14768
14768
|
];
|
|
14769
14769
|
return [
|
|
@@ -14781,7 +14781,7 @@ var Qm = class {
|
|
|
14781
14781
|
})) }
|
|
14782
14782
|
},
|
|
14783
14783
|
{
|
|
14784
|
-
icon:
|
|
14784
|
+
icon: B,
|
|
14785
14785
|
title: Z(r, "tools.audio.caption", "Caption"),
|
|
14786
14786
|
name: "audio-caption",
|
|
14787
14787
|
isActive: a,
|
|
@@ -14789,7 +14789,7 @@ var Qm = class {
|
|
|
14789
14789
|
onActivate: () => this.toggleCaption()
|
|
14790
14790
|
},
|
|
14791
14791
|
{
|
|
14792
|
-
icon:
|
|
14792
|
+
icon: Jt,
|
|
14793
14793
|
title: Z(r, "tools.audio.loop", "Loop"),
|
|
14794
14794
|
name: "audio-loop",
|
|
14795
14795
|
isActive: this.data.loop === !0,
|
|
@@ -14797,14 +14797,14 @@ var Qm = class {
|
|
|
14797
14797
|
onActivate: () => this.toggleLoop()
|
|
14798
14798
|
},
|
|
14799
14799
|
{
|
|
14800
|
-
icon:
|
|
14800
|
+
icon: Ce,
|
|
14801
14801
|
title: Z(r, "tools.audio.replace", "Replace audio"),
|
|
14802
14802
|
name: "audio-replace",
|
|
14803
14803
|
closeOnActivate: !0,
|
|
14804
14804
|
onActivate: () => this.transitionToEmpty()
|
|
14805
14805
|
},
|
|
14806
14806
|
{
|
|
14807
|
-
icon:
|
|
14807
|
+
icon: me,
|
|
14808
14808
|
title: Z(r, "tools.audio.coverSet", "Set cover image"),
|
|
14809
14809
|
name: "audio-cover-set",
|
|
14810
14810
|
closeOnActivate: !0,
|
|
@@ -15265,152 +15265,152 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15265
15265
|
n.className = "blok-video-controls__preview-source", n.setAttribute("data-role", "seek-preview-source"), n.muted = !0, n.preload = "auto", e.crossOrigin && (n.crossOrigin = e.crossOrigin), n.src = t, n.addEventListener("loadeddata", () => {
|
|
15266
15266
|
R.ready = !0, R.pendingTime >= 0 && pe(R.pendingTime);
|
|
15267
15267
|
}), n.addEventListener("seeked", fe), R.el = n, s.appendChild(n);
|
|
15268
|
-
},
|
|
15268
|
+
}, z = (t) => {
|
|
15269
15269
|
let n = _.getBoundingClientRect(), r = dh(t.clientX, n), i = uh(r, e.duration);
|
|
15270
15270
|
S.textContent = ch(i), b.style.setProperty("--blok-tooltip-x", `${r * 100}%`), b.setAttribute("aria-hidden", "false"), Number.isFinite(e.duration) && e.duration > 0 && (me(), pe(i));
|
|
15271
|
-
},
|
|
15271
|
+
}, he = () => {
|
|
15272
15272
|
b.setAttribute("aria-hidden", "true"), R.pendingTime = -1;
|
|
15273
|
-
},
|
|
15273
|
+
}, ge = () => te(!0), _e = () => te(!1), ve = () => e.muted || e.volume === 0, ye = () => {
|
|
15274
15274
|
w.classList.remove("is-bumped"), w.offsetWidth, w.classList.add("is-bumped");
|
|
15275
|
-
},
|
|
15276
|
-
let t =
|
|
15275
|
+
}, be = () => {
|
|
15276
|
+
let t = ve();
|
|
15277
15277
|
w.setAttribute("aria-pressed", String(t)), w.innerHTML = t ? cr : g, w.setAttribute("aria-label", t ? "Unmute" : "Mute"), T.value = t ? "0" : String(e.volume), T.style.setProperty("--blok-vol-pct", `${Number(T.value) * 100}%`);
|
|
15278
|
-
},
|
|
15279
|
-
let t =
|
|
15280
|
-
e(),
|
|
15281
|
-
},
|
|
15278
|
+
}, xe = (e) => {
|
|
15279
|
+
let t = ve();
|
|
15280
|
+
e(), be(), ve() !== t && ye();
|
|
15281
|
+
}, Se = () => w.classList.remove("is-bumped"), Ce = () => {
|
|
15282
15282
|
let e = document.fullscreenElement === t;
|
|
15283
|
-
if (t.setAttribute("data-fullscreen", String(e)), E.innerHTML = e ?
|
|
15283
|
+
if (t.setAttribute("data-fullscreen", String(e)), E.innerHTML = e ? Qt : yr, E.setAttribute("aria-label", e ? "Exit fullscreen" : "Fullscreen"), e) {
|
|
15284
15284
|
var n, r;
|
|
15285
15285
|
let e = (n = (r = t.querySelector("[data-role=\"video-caption\"]")) == null || (r = r.textContent) == null ? void 0 : r.trim()) == null ? "" : n;
|
|
15286
15286
|
O.textContent = e, O.hidden = e.length === 0;
|
|
15287
15287
|
} else O.hidden = !0, O.textContent = "";
|
|
15288
|
-
},
|
|
15288
|
+
}, we = (e) => {
|
|
15289
15289
|
c.innerHTML = e ? _r : vt, c.classList.remove("is-active"), c.offsetWidth, c.classList.add("is-active");
|
|
15290
|
-
},
|
|
15290
|
+
}, Te = (e) => {
|
|
15291
15291
|
e.animationName && e.animationName !== "blok-video-burst" || c.classList.remove("is-active");
|
|
15292
|
-
},
|
|
15292
|
+
}, Ee = () => {
|
|
15293
15293
|
let e = !A.playing;
|
|
15294
|
-
A.playing ? k.pause() : k.play(),
|
|
15295
|
-
},
|
|
15294
|
+
A.playing ? k.pause() : k.play(), we(e);
|
|
15295
|
+
}, De = {
|
|
15296
15296
|
timer: 0,
|
|
15297
15297
|
active: !1,
|
|
15298
15298
|
suppressClick: !1
|
|
15299
|
+
}, Oe = () => {
|
|
15300
|
+
De.active = !0, A.playing || k.play(), k.playbackRate = 2, l.classList.add("is-active");
|
|
15299
15301
|
}, ke = () => {
|
|
15300
|
-
|
|
15301
|
-
}, Ae = () => {
|
|
15302
|
-
Oe.timer && (clearTimeout(Oe.timer), Oe.timer = 0), Oe.active && (Oe.active = !1, k.playbackRate = A.selectedRate, l.classList.remove("is-active"));
|
|
15303
|
-
}, je = (e) => {
|
|
15302
|
+
De.timer && (clearTimeout(De.timer), De.timer = 0), De.active && (De.active = !1, k.playbackRate = A.selectedRate, l.classList.remove("is-active"));
|
|
15303
|
+
}, Ae = (e) => {
|
|
15304
15304
|
if (!e.button) {
|
|
15305
|
-
if (!
|
|
15306
|
-
|
|
15305
|
+
if (!B.hidden) {
|
|
15306
|
+
De.suppressClick = !0;
|
|
15307
15307
|
return;
|
|
15308
15308
|
}
|
|
15309
|
-
|
|
15309
|
+
De.timer = window.setTimeout(Oe, 220);
|
|
15310
15310
|
}
|
|
15311
|
+
}, je = () => {
|
|
15312
|
+
De.active && (De.suppressClick = !0), ke();
|
|
15311
15313
|
}, Me = () => {
|
|
15312
|
-
|
|
15313
|
-
|
|
15314
|
-
if (Oe.suppressClick) {
|
|
15315
|
-
Oe.suppressClick = !1;
|
|
15314
|
+
if (De.suppressClick) {
|
|
15315
|
+
De.suppressClick = !1;
|
|
15316
15316
|
return;
|
|
15317
15317
|
}
|
|
15318
|
-
|
|
15319
|
-
},
|
|
15318
|
+
Ee();
|
|
15319
|
+
}, Ne = () => {
|
|
15320
15320
|
k.currentTime = Number(_.value), F();
|
|
15321
|
-
},
|
|
15322
|
-
let n = e === "forward" ? yn :
|
|
15321
|
+
}, Pe = .05, Fe = 1 / 30, Ie = .25, Le = .25, Re = (e, t = 5) => {
|
|
15322
|
+
let n = e === "forward" ? yn : Fn, r = `<span class="blok-video-controls__seek-flash-label">${t}s</span>`;
|
|
15323
15323
|
u.setAttribute("data-side", e), u.innerHTML = e === "forward" ? `${r}${n}` : `${n}${r}`, u.classList.remove("is-active"), u.offsetWidth, u.classList.add("is-active");
|
|
15324
|
-
},
|
|
15324
|
+
}, ze = (e) => {
|
|
15325
15325
|
e.animationName && !e.animationName.startsWith("blok-video-seek-flash-") || u.classList.remove("is-active");
|
|
15326
|
-
},
|
|
15326
|
+
}, Be = (e) => {
|
|
15327
15327
|
let t = Number.isFinite(k.duration) ? k.duration : 0, n = Math.min(t || Infinity, Math.max(0, e));
|
|
15328
15328
|
k.currentTime = n, _.value = String(n), F(), j();
|
|
15329
|
+
}, He = (e) => {
|
|
15330
|
+
Be(k.currentTime + e), Re(e < 0 ? "back" : "forward", Math.abs(e));
|
|
15329
15331
|
}, Ue = (e) => {
|
|
15330
|
-
|
|
15331
|
-
}, We = (e) => {
|
|
15332
|
-
Se(() => {
|
|
15332
|
+
xe(() => {
|
|
15333
15333
|
let t = Math.min(1, Math.max(0, k.volume + e));
|
|
15334
15334
|
k.volume = t, k.muted = t === 0, T.value = String(t);
|
|
15335
15335
|
});
|
|
15336
|
+
}, We = (e) => {
|
|
15337
|
+
k.playbackRate = Math.min(2, Math.max(Le, k.playbackRate + e));
|
|
15336
15338
|
}, qe = (e) => {
|
|
15337
|
-
k.playbackRate = Math.min(2, Math.max(Re, k.playbackRate + e));
|
|
15338
|
-
}, Je = (e) => {
|
|
15339
15339
|
if (e.metaKey || e.ctrlKey || e.altKey) return;
|
|
15340
15340
|
let t = Number.isFinite(k.duration) ? k.duration : 0;
|
|
15341
15341
|
switch (e.key) {
|
|
15342
15342
|
case "ArrowRight":
|
|
15343
|
-
e.preventDefault(),
|
|
15343
|
+
e.preventDefault(), He(5);
|
|
15344
15344
|
break;
|
|
15345
15345
|
case "ArrowLeft":
|
|
15346
|
-
e.preventDefault(),
|
|
15346
|
+
e.preventDefault(), He(-5);
|
|
15347
15347
|
break;
|
|
15348
15348
|
case "l":
|
|
15349
|
-
e.preventDefault(),
|
|
15349
|
+
e.preventDefault(), He(10);
|
|
15350
15350
|
break;
|
|
15351
15351
|
case "j":
|
|
15352
|
-
e.preventDefault(),
|
|
15352
|
+
e.preventDefault(), He(-10);
|
|
15353
15353
|
break;
|
|
15354
15354
|
case " ":
|
|
15355
15355
|
case "Spacebar":
|
|
15356
15356
|
case "k":
|
|
15357
|
-
e.preventDefault(),
|
|
15357
|
+
e.preventDefault(), Ee();
|
|
15358
15358
|
break;
|
|
15359
15359
|
case "m":
|
|
15360
|
-
e.preventDefault(),
|
|
15360
|
+
e.preventDefault(), Je();
|
|
15361
15361
|
break;
|
|
15362
15362
|
case "f":
|
|
15363
|
-
e.preventDefault(),
|
|
15363
|
+
e.preventDefault(), Xe();
|
|
15364
15364
|
break;
|
|
15365
15365
|
case "c":
|
|
15366
15366
|
e.preventDefault();
|
|
15367
15367
|
break;
|
|
15368
15368
|
case "ArrowUp":
|
|
15369
|
-
e.preventDefault(),
|
|
15369
|
+
e.preventDefault(), Ue(Pe);
|
|
15370
15370
|
break;
|
|
15371
15371
|
case "ArrowDown":
|
|
15372
|
-
e.preventDefault(),
|
|
15372
|
+
e.preventDefault(), Ue(-Pe);
|
|
15373
15373
|
break;
|
|
15374
15374
|
case "Home":
|
|
15375
|
-
e.preventDefault(),
|
|
15375
|
+
e.preventDefault(), Be(0);
|
|
15376
15376
|
break;
|
|
15377
15377
|
case "End":
|
|
15378
|
-
e.preventDefault(),
|
|
15378
|
+
e.preventDefault(), Be(t || k.currentTime);
|
|
15379
15379
|
break;
|
|
15380
15380
|
case ".":
|
|
15381
|
-
e.preventDefault(), A.playing ||
|
|
15381
|
+
e.preventDefault(), A.playing || Be(k.currentTime + Fe);
|
|
15382
15382
|
break;
|
|
15383
15383
|
case ",":
|
|
15384
|
-
e.preventDefault(), A.playing ||
|
|
15384
|
+
e.preventDefault(), A.playing || Be(k.currentTime - Fe);
|
|
15385
15385
|
break;
|
|
15386
15386
|
case ">":
|
|
15387
|
-
e.preventDefault(),
|
|
15387
|
+
e.preventDefault(), We(Ie);
|
|
15388
15388
|
break;
|
|
15389
15389
|
case "<":
|
|
15390
|
-
e.preventDefault(),
|
|
15390
|
+
e.preventDefault(), We(-Ie);
|
|
15391
15391
|
break;
|
|
15392
|
-
default: e.key.length === 1 && e.key >= "0" && e.key <= "9" && t > 0 && (e.preventDefault(),
|
|
15392
|
+
default: e.key.length === 1 && e.key >= "0" && e.key <= "9" && t > 0 && (e.preventDefault(), Be(t * Number(e.key) / 10));
|
|
15393
15393
|
}
|
|
15394
|
-
},
|
|
15395
|
-
|
|
15394
|
+
}, Je = () => {
|
|
15395
|
+
xe(() => {
|
|
15396
15396
|
k.muted = !k.muted;
|
|
15397
15397
|
});
|
|
15398
|
-
},
|
|
15399
|
-
|
|
15398
|
+
}, Ye = () => {
|
|
15399
|
+
xe(() => {
|
|
15400
15400
|
let e = Number(T.value);
|
|
15401
15401
|
k.volume = e, k.muted = e === 0;
|
|
15402
15402
|
});
|
|
15403
|
-
},
|
|
15403
|
+
}, Xe = () => {
|
|
15404
15404
|
var e, n, r;
|
|
15405
15405
|
document.fullscreenElement === t ? (e = (n = document).exitFullscreen) == null || e.call(n) : (r = t.requestFullscreen) == null || r.call(t);
|
|
15406
|
-
},
|
|
15406
|
+
}, Ze = (e) => `${e}×`, Qe = !!(!((a = (o = window).matchMedia) == null || (a = a.call(o, "(prefers-reduced-motion: reduce)")) == null) && a.matches), $e = (e) => {
|
|
15407
15407
|
let t = document.createElement("span");
|
|
15408
15408
|
return t.className = "blok-video-controls__menu-icon", t.setAttribute("aria-hidden", "true"), t.innerHTML = e, t;
|
|
15409
|
-
},
|
|
15409
|
+
}, et = (e, t, n, r) => {
|
|
15410
15410
|
let i = document.createElement("button");
|
|
15411
15411
|
i.type = "button", i.className = "blok-video-controls__menu-row", i.setAttribute("data-action", e), i.setAttribute("role", "menuitem"), i.setAttribute("aria-haspopup", "menu");
|
|
15412
15412
|
let a = [];
|
|
15413
|
-
r && a.push(
|
|
15413
|
+
r && a.push($e(r));
|
|
15414
15414
|
let o = document.createElement("span");
|
|
15415
15415
|
o.className = "blok-video-controls__menu-label", o.textContent = t;
|
|
15416
15416
|
let s = document.createElement("span");
|
|
@@ -15420,133 +15420,133 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15420
15420
|
row: i,
|
|
15421
15421
|
value: s
|
|
15422
15422
|
};
|
|
15423
|
-
},
|
|
15424
|
-
|
|
15425
|
-
let
|
|
15426
|
-
|
|
15427
|
-
|
|
15423
|
+
}, tt = fh("gear", "Settings", Et);
|
|
15424
|
+
tt.setAttribute("aria-haspopup", "menu"), tt.setAttribute("aria-expanded", "false");
|
|
15425
|
+
let B = document.createElement("div");
|
|
15426
|
+
B.className = "blok-video-controls__menu", B.setAttribute("data-role", "playback-menu"), B.setAttribute("role", "menu"), B.setAttribute("data-view", "main"), B.hidden = !0, B.addEventListener("scroll", () => {
|
|
15427
|
+
B.scrollLeft && (B.scrollLeft = 0), B.scrollTop && (B.scrollTop = 0);
|
|
15428
15428
|
});
|
|
15429
|
+
let nt = document.createElement("div");
|
|
15430
|
+
nt.className = "blok-video-controls__menu-track";
|
|
15429
15431
|
let rt = document.createElement("div");
|
|
15430
|
-
rt.className = "blok-video-controls__menu-
|
|
15432
|
+
rt.className = "blok-video-controls__menu-pane", rt.setAttribute("data-role", "menu-main");
|
|
15431
15433
|
let it = document.createElement("div");
|
|
15432
|
-
it.className = "blok-video-controls__menu-pane", it.setAttribute("data-role", "menu-
|
|
15434
|
+
it.className = "blok-video-controls__menu-pane", it.setAttribute("data-role", "menu-speed");
|
|
15433
15435
|
let ot = document.createElement("div");
|
|
15434
|
-
ot.className = "blok-video-controls__menu-
|
|
15435
|
-
let st =
|
|
15436
|
-
|
|
15437
|
-
|
|
15438
|
-
|
|
15439
|
-
|
|
15440
|
-
|
|
15441
|
-
|
|
15442
|
-
|
|
15443
|
-
|
|
15444
|
-
|
|
15445
|
-
dt.
|
|
15446
|
-
let ft = document.createElement("
|
|
15447
|
-
ft.
|
|
15436
|
+
ot.className = "blok-video-controls__menu-wrap", ot.append(tt);
|
|
15437
|
+
let st = (e) => {
|
|
15438
|
+
B.setAttribute("data-view", e);
|
|
15439
|
+
let t = e === "speed" ? it : rt;
|
|
15440
|
+
if (rt.toggleAttribute("inert", e !== "main"), it.toggleAttribute("inert", e !== "speed"), !B.hidden) {
|
|
15441
|
+
let e = (e) => parseFloat(e) || 0, n = getComputedStyle(B), r = e(n.paddingTop) + e(n.paddingBottom) + e(n.borderTopWidth) + e(n.borderBottomWidth);
|
|
15442
|
+
B.style.height = `${t.scrollHeight + r}px`;
|
|
15443
|
+
}
|
|
15444
|
+
}, { row: ct, value: ut } = et("open-speed", "Playback speed", "menu-value-speed", pr);
|
|
15445
|
+
ut.textContent = Ze(A.selectedRate), ct.addEventListener("click", () => st("speed"));
|
|
15446
|
+
let dt = document.createElement("button");
|
|
15447
|
+
dt.type = "button", dt.className = "blok-video-controls__menu-row", dt.setAttribute("data-action", "loop"), dt.setAttribute("role", "menuitemcheckbox"), dt.setAttribute("aria-checked", String(i));
|
|
15448
|
+
let ft = document.createElement("span");
|
|
15449
|
+
ft.className = "blok-video-controls__menu-label", ft.textContent = "Loop";
|
|
15448
15450
|
let pt = document.createElement("span");
|
|
15449
|
-
pt.className = "blok-video-controls__menu-
|
|
15451
|
+
pt.className = "blok-video-controls__menu-value", pt.setAttribute("data-role", "menu-value-loop"), pt.textContent = i ? "On" : "Off";
|
|
15450
15452
|
let mt = document.createElement("span");
|
|
15451
|
-
mt.className = "blok-video-controls__menu-
|
|
15452
|
-
|
|
15453
|
-
|
|
15454
|
-
|
|
15455
|
-
}), it.append(lt, ft);
|
|
15456
|
-
let gt = .05, _t = [
|
|
15453
|
+
mt.className = "blok-video-controls__menu-chevron", mt.setAttribute("aria-hidden", "true"), dt.append($e(Jt), ft, pt, mt), dt.addEventListener("click", () => {
|
|
15454
|
+
k.loop = !k.loop, dt.setAttribute("aria-checked", String(k.loop)), pt.textContent = k.loop ? "On" : "Off";
|
|
15455
|
+
}), rt.append(ct, dt);
|
|
15456
|
+
let ht = .05, gt = [
|
|
15457
15457
|
.5,
|
|
15458
15458
|
1,
|
|
15459
15459
|
1.5,
|
|
15460
15460
|
2
|
|
15461
|
-
],
|
|
15462
|
-
|
|
15463
|
-
let
|
|
15464
|
-
|
|
15461
|
+
], _t = (e) => Math.min(2, Math.max(Le, Math.round(e * 100) / 100));
|
|
15462
|
+
it.setAttribute("role", "group"), it.setAttribute("aria-label", "Playback speed");
|
|
15463
|
+
let yt = document.createElement("button");
|
|
15464
|
+
yt.type = "button", yt.className = "blok-video-controls__menu-row blok-video-controls__menu-back", yt.setAttribute("data-action", "speed-back"), yt.setAttribute("aria-label", "Back");
|
|
15465
|
+
let bt = document.createElement("span");
|
|
15466
|
+
bt.className = "blok-video-controls__menu-chevron", bt.setAttribute("aria-hidden", "true"), bt.innerHTML = lt;
|
|
15465
15467
|
let xt = document.createElement("span");
|
|
15466
|
-
xt.className = "blok-video-controls__menu-
|
|
15467
|
-
let St = document.createElement("
|
|
15468
|
-
St.className = "blok-video-
|
|
15469
|
-
let Ct =
|
|
15470
|
-
Ct.className = "blok-video-controls__speed-readout", Ct.setAttribute("data-role", "speed-readout"), Ct.setAttribute("aria-hidden", "true"), Ct.textContent = Qe(A.selectedRate);
|
|
15471
|
-
let wt = (e, t, n) => {
|
|
15468
|
+
xt.className = "blok-video-controls__menu-label", xt.textContent = "Playback speed", yt.append(bt, xt), yt.addEventListener("click", () => st("main"));
|
|
15469
|
+
let St = document.createElement("div");
|
|
15470
|
+
St.className = "blok-video-controls__speed-readout", St.setAttribute("data-role", "speed-readout"), St.setAttribute("aria-hidden", "true"), St.textContent = Ze(A.selectedRate);
|
|
15471
|
+
let Ct = (e, t, n) => {
|
|
15472
15472
|
let r = document.createElement("button");
|
|
15473
15473
|
return r.type = "button", r.className = "blok-video-controls__speed-step", r.setAttribute("data-action", e), r.setAttribute("aria-label", n), r.innerHTML = t, r;
|
|
15474
|
-
},
|
|
15475
|
-
|
|
15476
|
-
let
|
|
15477
|
-
|
|
15478
|
-
let
|
|
15479
|
-
|
|
15480
|
-
let
|
|
15474
|
+
}, wt = Ct("speed-dec", An, "Decrease playback speed"), Tt = Ct("speed-inc", Ke, "Increase playback speed"), V = document.createElement("input");
|
|
15475
|
+
V.type = "range", V.className = "blok-video-controls__speed-slider", V.setAttribute("data-role", "speed-slider"), V.min = "0.25", V.max = "2", V.step = "0.05", V.value = String(A.selectedRate), V.setAttribute("aria-label", "Playback speed"), V.setAttribute("aria-valuetext", Ze(A.selectedRate)), V.addEventListener("input", () => Mt(Number(V.value)));
|
|
15476
|
+
let Dt = (e) => `${(e - Le) / (2 - Le) * 100}%`;
|
|
15477
|
+
V.style.setProperty("--blok-speed-pct", Dt(A.selectedRate));
|
|
15478
|
+
let Ot = document.createElement("div");
|
|
15479
|
+
Ot.className = "blok-video-controls__speed-slider-row", Ot.append(wt, V, Tt);
|
|
15480
|
+
let kt = gt.map((e) => {
|
|
15481
15481
|
let t = document.createElement("button");
|
|
15482
15482
|
return t.type = "button", t.className = "blok-video-controls__speed-chip", t.setAttribute("data-action", `speed-${e}`), t.textContent = `${e}×`, t.addEventListener("click", () => {
|
|
15483
15483
|
let t = A.selectedRate;
|
|
15484
|
-
|
|
15484
|
+
Mt(e), Nt(t, e);
|
|
15485
15485
|
}), t;
|
|
15486
|
-
}),
|
|
15487
|
-
|
|
15488
|
-
let
|
|
15489
|
-
cancelAnimationFrame(
|
|
15490
|
-
let t =
|
|
15486
|
+
}), At = document.createElement("div");
|
|
15487
|
+
At.className = "blok-video-controls__speed-chips", At.setAttribute("aria-label", "Speed presets"), At.append(...kt), it.append(yt, St, Ot, At);
|
|
15488
|
+
let jt = { raf: 0 }, Mt = (e) => {
|
|
15489
|
+
cancelAnimationFrame(jt.raf);
|
|
15490
|
+
let t = _t(e);
|
|
15491
15491
|
A.selectedRate = t, k.playbackRate = t;
|
|
15492
|
-
let n =
|
|
15493
|
-
|
|
15494
|
-
},
|
|
15495
|
-
if (cancelAnimationFrame(
|
|
15492
|
+
let n = Ze(t);
|
|
15493
|
+
St.textContent = n, ut.textContent = n, V.value = String(t), V.setAttribute("aria-valuetext", n), V.style.setProperty("--blok-speed-pct", Dt(t)), wt.disabled = t <= Le, Tt.disabled = t >= 2;
|
|
15494
|
+
}, Nt = (e, t) => {
|
|
15495
|
+
if (cancelAnimationFrame(jt.raf), Qe || e === t) return;
|
|
15496
15496
|
let n = performance.now(), r = (e) => {
|
|
15497
|
-
|
|
15497
|
+
V.value = String(e), V.style.setProperty("--blok-speed-pct", Dt(e));
|
|
15498
15498
|
};
|
|
15499
15499
|
r(e);
|
|
15500
15500
|
let i = (a) => {
|
|
15501
15501
|
let o = Math.min(1, (a - n) / 240), s = 1 - (1 - o) ** 3;
|
|
15502
15502
|
if (r(e + (t - e) * s), o < 1) {
|
|
15503
|
-
|
|
15503
|
+
jt.raf = requestAnimationFrame(i);
|
|
15504
15504
|
return;
|
|
15505
15505
|
}
|
|
15506
|
-
|
|
15506
|
+
jt.raf = 0, r(t);
|
|
15507
15507
|
};
|
|
15508
|
-
|
|
15508
|
+
jt.raf = requestAnimationFrame(i);
|
|
15509
15509
|
};
|
|
15510
|
-
|
|
15511
|
-
let
|
|
15512
|
-
let e =
|
|
15513
|
-
|
|
15514
|
-
},
|
|
15515
|
-
if (
|
|
15510
|
+
wt.addEventListener("click", () => Mt(A.selectedRate - ht)), Tt.addEventListener("click", () => Mt(A.selectedRate + ht)), wt.disabled = A.selectedRate <= Le, Tt.disabled = A.selectedRate >= 2, nt.append(rt, it), B.append(nt), p.insertBefore(ot, E), t.appendChild(B);
|
|
15511
|
+
let Pt = () => {
|
|
15512
|
+
let e = tt.getBoundingClientRect(), n = t.getBoundingClientRect();
|
|
15513
|
+
B.style.right = `${n.right - e.right}px`, B.style.bottom = `${n.bottom - e.top + 8}px`;
|
|
15514
|
+
}, Ft = (e) => {
|
|
15515
|
+
if (B.hidden) return;
|
|
15516
15516
|
let t = e.target;
|
|
15517
|
-
t && (
|
|
15517
|
+
t && (ot.contains(t) || B.contains(t)) || Lt();
|
|
15518
|
+
}, It = () => {
|
|
15519
|
+
B.hidden && (B.hidden = !1, B.style.transition = "none", nt.style.transition = "none", st("main"), B.offsetHeight, B.style.transition = "", nt.style.transition = "", Pt(), tt.setAttribute("aria-expanded", "true"), document.addEventListener("mousedown", Ft), window.addEventListener("resize", Pt));
|
|
15518
15520
|
}, Lt = () => {
|
|
15519
|
-
|
|
15520
|
-
}, Rt = () => {
|
|
15521
|
-
z.hidden || (z.hidden = !0, nt.setAttribute("aria-expanded", "false"), document.removeEventListener("mousedown", It), window.removeEventListener("resize", Ft));
|
|
15521
|
+
B.hidden || (B.hidden = !0, tt.setAttribute("aria-expanded", "false"), document.removeEventListener("mousedown", Ft), window.removeEventListener("resize", Pt));
|
|
15522
15522
|
};
|
|
15523
|
-
|
|
15524
|
-
e.stopPropagation(),
|
|
15523
|
+
tt.addEventListener("click", (e) => {
|
|
15524
|
+
e.stopPropagation(), B.hidden ? It() : Lt();
|
|
15525
15525
|
});
|
|
15526
|
-
let
|
|
15527
|
-
|
|
15528
|
-
let
|
|
15529
|
-
let t =
|
|
15530
|
-
t && e.videoWidth && (
|
|
15526
|
+
let Rt = document.createElement("canvas");
|
|
15527
|
+
Rt.className = "blok-video-controls__ambient", Rt.setAttribute("data-role", "video-ambient"), Rt.setAttribute("aria-hidden", "true"), t.insertBefore(Rt, t.firstChild), Rt.setAttribute("data-ambient", Qe ? "off" : "on"), Rt.setAttribute("data-glow", r), Rt.setAttribute("data-active", "false");
|
|
15528
|
+
let zt = { raf: 0 }, Bt = () => {
|
|
15529
|
+
let t = Rt.getContext("2d");
|
|
15530
|
+
t && e.videoWidth && (Rt.width = 32, Rt.height = 18, t.drawImage(e, 0, 0, 32, 18)), zt.raf = requestAnimationFrame(Bt);
|
|
15531
|
+
}, Vt = () => {
|
|
15532
|
+
Qe || r === "none" || (Rt.setAttribute("data-active", "true"), !zt.raf && (zt.raf = requestAnimationFrame(Bt)));
|
|
15531
15533
|
}, Ht = () => {
|
|
15532
|
-
|
|
15533
|
-
}, Ut = ()
|
|
15534
|
-
|
|
15535
|
-
|
|
15536
|
-
Gt.setAttribute("aria-pressed", "false");
|
|
15537
|
-
let Kt = {
|
|
15534
|
+
Rt.setAttribute("data-active", "false"), zt.raf && (cancelAnimationFrame(zt.raf), zt.raf = 0);
|
|
15535
|
+
}, Ut = Ge(), Wt = fh("theater", "Theater mode", Ve);
|
|
15536
|
+
Wt.setAttribute("aria-pressed", "false");
|
|
15537
|
+
let Gt = {
|
|
15538
15538
|
on: !1,
|
|
15539
15539
|
inlineRect: null
|
|
15540
|
+
}, Kt = (e) => {
|
|
15541
|
+
e.key === "Escape" && (e.preventDefault(), e.stopImmediatePropagation(), requestAnimationFrame(() => rn(!1)));
|
|
15540
15542
|
}, qt = (e) => {
|
|
15541
|
-
e.key === "Escape" && (e.preventDefault(), e.stopImmediatePropagation(), requestAnimationFrame(() => an(!1)));
|
|
15542
|
-
}, Jt = (e) => {
|
|
15543
15543
|
let n = e.target;
|
|
15544
|
-
n && !t.contains(n) &&
|
|
15545
|
-
},
|
|
15546
|
-
|
|
15547
|
-
},
|
|
15544
|
+
n && !t.contains(n) && rn(!1);
|
|
15545
|
+
}, Yt = typeof t.animate == "function", Xt = { anim: null }, Zt = () => {
|
|
15546
|
+
Xt.anim && (Xt.anim.cancel(), Xt.anim = null);
|
|
15547
|
+
}, $t = (e, t) => `translate(${t.left - e.left}px, ${t.top - e.top}px) scale(${t.width / e.width}, ${t.height / e.height})`, en = (e, n, r) => {
|
|
15548
15548
|
var i;
|
|
15549
|
-
|
|
15549
|
+
Zt();
|
|
15550
15550
|
let a = t.animate([{
|
|
15551
15551
|
transformOrigin: "top left",
|
|
15552
15552
|
transform: e
|
|
@@ -15558,32 +15558,32 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15558
15558
|
easing: r.easing,
|
|
15559
15559
|
fill: (i = r.fill) == null ? "none" : i
|
|
15560
15560
|
});
|
|
15561
|
-
|
|
15561
|
+
Xt.anim = a, a.onfinish = () => {
|
|
15562
15562
|
var e;
|
|
15563
|
-
|
|
15563
|
+
Xt.anim === a && (Xt.anim = null), (e = r.done) == null || e.call(r), a.cancel();
|
|
15564
15564
|
};
|
|
15565
|
-
},
|
|
15565
|
+
}, tn = () => {
|
|
15566
15566
|
let n = e.getBoundingClientRect();
|
|
15567
|
-
|
|
15567
|
+
Gt.inlineRect = n;
|
|
15568
15568
|
let r = t.parentElement;
|
|
15569
|
-
if (r && (r.style.minHeight = `${t.getBoundingClientRect().height}px`), t.setAttribute("data-theater", "true"), !
|
|
15569
|
+
if (r && (r.style.minHeight = `${t.getBoundingClientRect().height}px`), t.setAttribute("data-theater", "true"), !Ut) return;
|
|
15570
15570
|
if (!t.matches(":popover-open") && !h(t)) {
|
|
15571
15571
|
sr(t);
|
|
15572
15572
|
return;
|
|
15573
15573
|
}
|
|
15574
|
-
if (
|
|
15574
|
+
if (Qe || !Yt) return;
|
|
15575
15575
|
let i = e.getBoundingClientRect();
|
|
15576
|
-
!n.width || !i.width ||
|
|
15576
|
+
!n.width || !i.width || en($t(i, n), "translate(0px, 0px) scale(1, 1)", {
|
|
15577
15577
|
duration: 480,
|
|
15578
15578
|
easing: "cubic-bezier(0.33, 1, 0.68, 1)"
|
|
15579
15579
|
});
|
|
15580
|
-
},
|
|
15580
|
+
}, nn = () => {
|
|
15581
15581
|
let n = () => {
|
|
15582
|
-
|
|
15582
|
+
Zt(), sr(t), t.setAttribute("data-theater", "false"), t.removeAttribute("data-theater-leaving");
|
|
15583
15583
|
let e = t.parentElement;
|
|
15584
15584
|
e && (e.style.minHeight = "");
|
|
15585
|
-
}, r =
|
|
15586
|
-
if (!
|
|
15585
|
+
}, r = Gt.inlineRect;
|
|
15586
|
+
if (!Ut || Qe || !Yt || !r || !t.matches(":popover-open")) {
|
|
15587
15587
|
n();
|
|
15588
15588
|
return;
|
|
15589
15589
|
}
|
|
@@ -15592,21 +15592,21 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15592
15592
|
n();
|
|
15593
15593
|
return;
|
|
15594
15594
|
}
|
|
15595
|
-
t.setAttribute("data-theater-leaving", "true"),
|
|
15595
|
+
t.setAttribute("data-theater-leaving", "true"), en("translate(0px, 0px) scale(1, 1)", $t(i, r), {
|
|
15596
15596
|
duration: 360,
|
|
15597
15597
|
easing: "cubic-bezier(0.33, 1, 0.68, 1)",
|
|
15598
15598
|
fill: "forwards",
|
|
15599
15599
|
done: n
|
|
15600
15600
|
});
|
|
15601
|
-
},
|
|
15602
|
-
e !==
|
|
15601
|
+
}, rn = (e) => {
|
|
15602
|
+
e !== Gt.on && (Gt.on = e, Wt.setAttribute("aria-pressed", String(e)), Wt.setAttribute("aria-label", e ? "Exit theater mode" : "Theater mode"), e ? (tn(), window.addEventListener("keydown", Kt, !0), document.addEventListener("pointerdown", qt)) : (window.removeEventListener("keydown", Kt, !0), document.removeEventListener("pointerdown", qt), nn()), t.dispatchEvent(new CustomEvent("blok-video-theater", { detail: { on: e } })));
|
|
15603
15603
|
};
|
|
15604
|
-
|
|
15605
|
-
let
|
|
15606
|
-
|
|
15604
|
+
Wt.addEventListener("click", () => rn(!Gt.on)), p.insertBefore(Wt, E);
|
|
15605
|
+
let an = document.pictureInPictureEnabled ? fh("picture-in-picture", "Picture-in-Picture", ir) : null, on = () => an == null ? void 0 : an.setAttribute("aria-pressed", "true"), sn = () => an == null ? void 0 : an.setAttribute("aria-pressed", "false");
|
|
15606
|
+
an && (an.setAttribute("aria-pressed", "false"), an.addEventListener("click", () => {
|
|
15607
15607
|
var t, n, r;
|
|
15608
15608
|
document.pictureInPictureElement === e ? (t = (n = document).exitPictureInPicture) == null || t.call(n) : (r = e.requestPictureInPicture) == null || r.call(e);
|
|
15609
|
-
}), p.insertBefore(
|
|
15609
|
+
}), p.insertBefore(an, E), e.addEventListener("enterpictureinpicture", on), e.addEventListener("leavepictureinpicture", sn)), t.setAttribute("data-controls-hidden", "false");
|
|
15610
15610
|
let cn = () => {
|
|
15611
15611
|
A.playing && t.isConnected && t.setAttribute("data-controls-hidden", "true");
|
|
15612
15612
|
}, ln = () => {
|
|
@@ -15653,7 +15653,7 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15653
15653
|
}), hn.addEventListener("click", () => {
|
|
15654
15654
|
bn(), wn();
|
|
15655
15655
|
}), e.addEventListener("contextmenu", Tn);
|
|
15656
|
-
let En = n == null ? typeof localStorage < "u" ? localStorage : null : n, Dn = "blok:video:volume", On = () => e.currentSrc ? `blok:video:pos:${e.currentSrc}` : null,
|
|
15656
|
+
let En = n == null ? typeof localStorage < "u" ? localStorage : null : n, Dn = "blok:video:volume", On = () => e.currentSrc ? `blok:video:pos:${e.currentSrc}` : null, kn = (e) => {
|
|
15657
15657
|
try {
|
|
15658
15658
|
var t;
|
|
15659
15659
|
return (t = En == null ? void 0 : En.getItem(e)) == null ? null : t;
|
|
@@ -15670,33 +15670,33 @@ function ph({ video: e, figure: t, storage: n, glow: r = "minimal", loop: i = !1
|
|
|
15670
15670
|
})), Nn = () => {
|
|
15671
15671
|
let e = On();
|
|
15672
15672
|
e && jn(e, String(k.currentTime));
|
|
15673
|
-
},
|
|
15673
|
+
}, Pn = (e) => {
|
|
15674
15674
|
let t = JSON.parse(e);
|
|
15675
|
-
typeof t.volume == "number" && (k.volume = t.volume, T.value = String(t.volume)), typeof t.muted == "boolean" && (k.muted = t.muted),
|
|
15675
|
+
typeof t.volume == "number" && (k.volume = t.volume, T.value = String(t.volume)), typeof t.muted == "boolean" && (k.muted = t.muted), be();
|
|
15676
15676
|
}, In = () => {
|
|
15677
|
-
let e =
|
|
15677
|
+
let e = kn(Dn);
|
|
15678
15678
|
if (e) try {
|
|
15679
|
-
|
|
15679
|
+
Pn(e);
|
|
15680
15680
|
} catch (e) {}
|
|
15681
|
-
let t = On(), n = t ?
|
|
15681
|
+
let t = On(), n = t ? kn(t) : null;
|
|
15682
15682
|
if (n !== null) {
|
|
15683
15683
|
let e = Number(n), t = Number.isFinite(k.duration) ? k.duration : 0;
|
|
15684
15684
|
Number.isFinite(e) && e > 0 && (t === 0 || e < t - 5) && (k.currentTime = e);
|
|
15685
15685
|
}
|
|
15686
15686
|
};
|
|
15687
|
-
return m.addEventListener("click",
|
|
15687
|
+
return m.addEventListener("click", Ee), d.addEventListener("click", () => {
|
|
15688
15688
|
k.play();
|
|
15689
15689
|
}), C.addEventListener("click", (e) => {
|
|
15690
15690
|
e.stopPropagation(), M();
|
|
15691
15691
|
}), C.addEventListener("keydown", (e) => {
|
|
15692
15692
|
(e.key === "Enter" || e.key === " ") && (e.preventDefault(), e.stopPropagation(), M());
|
|
15693
|
-
}), e.addEventListener("click",
|
|
15693
|
+
}), e.addEventListener("click", Me), e.addEventListener("pointerdown", Ae), e.addEventListener("pointerup", je), e.addEventListener("pointerleave", ke), e.addEventListener("pointercancel", ke), e.addEventListener("keydown", qe), u.addEventListener("animationend", ze), c.addEventListener("animationend", Te), _.addEventListener("input", Ne), _.addEventListener("pointermove", z), _.addEventListener("pointerleave", he), w.addEventListener("click", Je), w.addEventListener("animationend", Se), T.addEventListener("input", Ye), E.addEventListener("click", Xe), e.addEventListener("loadedmetadata", ae), e.addEventListener("timeupdate", I), e.addEventListener("progress", oe), e.addEventListener("play", ge), e.addEventListener("play", ce), e.addEventListener("pause", le), _.addEventListener("pointerdown", ue), document.addEventListener("pointerup", de), e.addEventListener("play", Vt), e.addEventListener("play", N), e.addEventListener("play", ln), e.addEventListener("pause", Ht), e.addEventListener("pause", _e), e.addEventListener("pause", N), e.addEventListener("pause", un), e.addEventListener("timeupdate", N), e.addEventListener("timeupdate", Nn), e.addEventListener("timeupdate", xn), e.addEventListener("waiting", ne), e.addEventListener("playing", P), e.addEventListener("canplay", re), e.addEventListener("volumechange", be), e.addEventListener("volumechange", Mn), e.addEventListener("loadedmetadata", In), t.addEventListener("pointermove", un), t.addEventListener("focusin", un), document.addEventListener("fullscreenchange", Ce), N(), {
|
|
15694
15694
|
element: s,
|
|
15695
|
-
setTheater:
|
|
15695
|
+
setTheater: rn,
|
|
15696
15696
|
destroy: () => {
|
|
15697
|
-
|
|
15697
|
+
De.timer && clearTimeout(De.timer), A.idleTimer && clearTimeout(A.idleTimer), document.removeEventListener("mousedown", Ft), document.removeEventListener("mousedown", Sn), document.removeEventListener("keydown", Cn), window.removeEventListener("keydown", Kt, !0), e.removeEventListener("contextmenu", Tn), cancelAnimationFrame(jt.raf), le(), e.removeEventListener("play", ce), e.removeEventListener("pause", le), _.removeEventListener("pointerdown", ue), document.removeEventListener("pointerup", de), Ht(), e.removeEventListener("play", Vt), e.removeEventListener("play", N), e.removeEventListener("play", ln), e.removeEventListener("pause", Ht), e.removeEventListener("pause", N), e.removeEventListener("pause", un), e.removeEventListener("timeupdate", N), e.removeEventListener("timeupdate", Nn), e.removeEventListener("timeupdate", xn), e.removeEventListener("waiting", ne), e.removeEventListener("playing", P), e.removeEventListener("canplay", re), e.removeEventListener("volumechange", Mn), e.removeEventListener("loadedmetadata", In), t.removeEventListener("pointermove", un), t.removeEventListener("focusin", un), an && (e.removeEventListener("enterpictureinpicture", on), e.removeEventListener("leavepictureinpicture", sn)), e.removeEventListener("click", Me), e.removeEventListener("pointerdown", Ae), e.removeEventListener("pointerup", je), e.removeEventListener("pointerleave", ke), e.removeEventListener("pointercancel", ke), e.removeEventListener("keydown", qe), u.removeEventListener("animationend", ze), _.removeEventListener("pointermove", z), _.removeEventListener("pointerleave", he), R.el && (R.el.removeEventListener("seeked", fe), R.el.removeAttribute("src"), R.el.load(), R.el.remove(), R.el = null), e.removeEventListener("loadedmetadata", ae), e.removeEventListener("timeupdate", I), e.removeEventListener("progress", oe), e.removeEventListener("play", ge), e.removeEventListener("pause", _e), e.removeEventListener("volumechange", be), w.removeEventListener("animationend", Se), document.removeEventListener("fullscreenchange", Ce), document.removeEventListener("pointerdown", qt), Zt(), sr(t);
|
|
15698
15698
|
let n = t.parentElement;
|
|
15699
|
-
n && (n.style.minHeight = ""),
|
|
15699
|
+
n && (n.style.minHeight = ""), Lt(), B.remove(), s.remove();
|
|
15700
15700
|
}
|
|
15701
15701
|
};
|
|
15702
15702
|
}
|
|
@@ -15758,7 +15758,7 @@ var gh = class {
|
|
|
15758
15758
|
}
|
|
15759
15759
|
static get toolbox() {
|
|
15760
15760
|
return {
|
|
15761
|
-
icon:
|
|
15761
|
+
icon: te,
|
|
15762
15762
|
titleKey: "video",
|
|
15763
15763
|
searchTerms: [
|
|
15764
15764
|
"video",
|
|
@@ -15810,17 +15810,17 @@ var gh = class {
|
|
|
15810
15810
|
{
|
|
15811
15811
|
value: "left",
|
|
15812
15812
|
title: Q(r, "tools.video.alignmentLeft", "Align left"),
|
|
15813
|
-
icon:
|
|
15813
|
+
icon: D
|
|
15814
15814
|
},
|
|
15815
15815
|
{
|
|
15816
15816
|
value: "center",
|
|
15817
15817
|
title: Q(r, "tools.video.alignmentCenter", "Align center"),
|
|
15818
|
-
icon:
|
|
15818
|
+
icon: Ee
|
|
15819
15819
|
},
|
|
15820
15820
|
{
|
|
15821
15821
|
value: "right",
|
|
15822
15822
|
title: Q(r, "tools.video.alignmentRight", "Align right"),
|
|
15823
|
-
icon:
|
|
15823
|
+
icon: F
|
|
15824
15824
|
}
|
|
15825
15825
|
];
|
|
15826
15826
|
return [
|
|
@@ -15838,7 +15838,7 @@ var gh = class {
|
|
|
15838
15838
|
})) }
|
|
15839
15839
|
},
|
|
15840
15840
|
{
|
|
15841
|
-
icon:
|
|
15841
|
+
icon: B,
|
|
15842
15842
|
title: Q(r, "tools.video.caption", "Caption"),
|
|
15843
15843
|
name: "video-caption",
|
|
15844
15844
|
isActive: a,
|
|
@@ -15854,7 +15854,7 @@ var gh = class {
|
|
|
15854
15854
|
onActivate: () => this.toggleAutoplay()
|
|
15855
15855
|
},
|
|
15856
15856
|
{
|
|
15857
|
-
icon:
|
|
15857
|
+
icon: Jt,
|
|
15858
15858
|
title: Q(r, "tools.video.loop", "Loop"),
|
|
15859
15859
|
name: "video-loop",
|
|
15860
15860
|
isActive: this.data.loop === !0,
|
|
@@ -15862,7 +15862,7 @@ var gh = class {
|
|
|
15862
15862
|
onActivate: () => this.toggleLoop()
|
|
15863
15863
|
},
|
|
15864
15864
|
{
|
|
15865
|
-
icon:
|
|
15865
|
+
icon: Et,
|
|
15866
15866
|
title: Q(r, "tools.video.hideControls", "Hide controls"),
|
|
15867
15867
|
name: "video-hide-controls",
|
|
15868
15868
|
isActive: this.data.hideControls === !0,
|
|
@@ -15870,7 +15870,7 @@ var gh = class {
|
|
|
15870
15870
|
onActivate: () => this.toggleHideControls()
|
|
15871
15871
|
},
|
|
15872
15872
|
{
|
|
15873
|
-
icon:
|
|
15873
|
+
icon: Ce,
|
|
15874
15874
|
title: Q(r, "tools.video.replace", "Replace video"),
|
|
15875
15875
|
name: "video-replace",
|
|
15876
15876
|
closeOnActivate: !0,
|
|
@@ -16081,7 +16081,7 @@ var gh = class {
|
|
|
16081
16081
|
}
|
|
16082
16082
|
render() {
|
|
16083
16083
|
let e = document.createElement("div");
|
|
16084
|
-
return e.className = G("flex", "flex-row", "flex-wrap", "gap-y-4", "w-full"), e.setAttribute(
|
|
16084
|
+
return e.className = G("flex", "flex-row", "flex-wrap", "gap-y-4", "w-full"), e.setAttribute(kn, ""), e.setAttribute("data-blok-testid", "column-list"), e.setAttribute(z.nestedBlocks, ""), this.container = e, e;
|
|
16085
16085
|
}
|
|
16086
16086
|
rendered() {
|
|
16087
16087
|
if (this.container === null) return;
|
|
@@ -16090,14 +16090,14 @@ var gh = class {
|
|
|
16090
16090
|
this._data.noSeed !== !0 && this.seedColumns();
|
|
16091
16091
|
return;
|
|
16092
16092
|
}
|
|
16093
|
-
Kr(this.container, e),
|
|
16093
|
+
Kr(this.container, e), Pt(this.container, e.map((e) => e.holder), this.readOnly, this.api, this.blockId);
|
|
16094
16094
|
}
|
|
16095
16095
|
seedColumns() {
|
|
16096
16096
|
var e;
|
|
16097
16097
|
let t = this.container;
|
|
16098
16098
|
if (t === null) return;
|
|
16099
16099
|
let n = (e = this._data.columnCount) == null ? 2 : e, r = this.api.blocks.getBlockIndex(this.blockId);
|
|
16100
|
-
r !== void 0 && (this._data = W(W({}, this._data), {}, { columnCount: void 0 }),
|
|
16100
|
+
r !== void 0 && (this._data = W(W({}, this._data), {}, { columnCount: void 0 }), Pt(t, Array.from({ length: n }).map((e, n) => {
|
|
16101
16101
|
let i = this.api.blocks.insert($n, { noFocus: n !== 0 }, {}, r + 1 + n, !1, !1);
|
|
16102
16102
|
return this.api.blocks.setBlockParent(i.id, this.blockId), t.appendChild(i.holder), i;
|
|
16103
16103
|
}).map((e) => e.holder), this.readOnly, this.api, this.blockId));
|
|
@@ -16109,7 +16109,7 @@ var gh = class {
|
|
|
16109
16109
|
return;
|
|
16110
16110
|
}
|
|
16111
16111
|
let t = this.api.blocks.getChildren(this.blockId);
|
|
16112
|
-
|
|
16112
|
+
Pt(this.container, t.map((e) => e.holder), !1, this.api, this.blockId);
|
|
16113
16113
|
}
|
|
16114
16114
|
save() {
|
|
16115
16115
|
return {};
|
|
@@ -16133,7 +16133,7 @@ var gh = class {
|
|
|
16133
16133
|
4,
|
|
16134
16134
|
5
|
|
16135
16135
|
].map((t) => W(W({}, e), {}, {
|
|
16136
|
-
icon:
|
|
16136
|
+
icon: ot(t),
|
|
16137
16137
|
titleKey: `tools.columns.col${t}`,
|
|
16138
16138
|
name: `column_list-${t}`,
|
|
16139
16139
|
data: { columnCount: t },
|
|
@@ -16155,7 +16155,7 @@ var gh = class {
|
|
|
16155
16155
|
let e = document.createElement("div");
|
|
16156
16156
|
e.className = G("flex", "flex-col", "min-w-0", "break-words"), e.setAttribute(Kn, "");
|
|
16157
16157
|
let t = document.createElement("div");
|
|
16158
|
-
return t.setAttribute(
|
|
16158
|
+
return t.setAttribute(z.nestedBlocks, ""), e.appendChild(t), this.childContainer = t, e;
|
|
16159
16159
|
}
|
|
16160
16160
|
rendered() {
|
|
16161
16161
|
var e;
|
|
@@ -16201,7 +16201,7 @@ var gh = class {
|
|
|
16201
16201
|
removed() {
|
|
16202
16202
|
queueMicrotask(() => {
|
|
16203
16203
|
let e = this.block.parentId;
|
|
16204
|
-
e !== null &&
|
|
16204
|
+
e !== null && Pn(this.api, e, this.blockId);
|
|
16205
16205
|
});
|
|
16206
16206
|
}
|
|
16207
16207
|
static get isReadOnlySupported() {
|
|
@@ -16216,7 +16216,7 @@ var gh = class {
|
|
|
16216
16216
|
}
|
|
16217
16217
|
}, xh = {
|
|
16218
16218
|
left: Cr,
|
|
16219
|
-
center:
|
|
16219
|
+
center: Re,
|
|
16220
16220
|
right: p
|
|
16221
16221
|
}, Sh = {
|
|
16222
16222
|
left: "tools.image.alignmentLeftAria",
|
|
@@ -16232,7 +16232,7 @@ function wh(e) {
|
|
|
16232
16232
|
return t.setAttribute("data-role", "embed-overlay"), t.className = "blok-embed-toolbar", Th(t, e), kh(t), Oh(t, {
|
|
16233
16233
|
action: "caption-toggle",
|
|
16234
16234
|
label: e.i18n.t("tools.image.toggleCaption"),
|
|
16235
|
-
icon:
|
|
16235
|
+
icon: A,
|
|
16236
16236
|
pressed: e.captionVisible,
|
|
16237
16237
|
onClick: e.onToggleCaption
|
|
16238
16238
|
}), Eh(t, e), kh(t), Dh(t, e), t;
|
|
@@ -16255,7 +16255,7 @@ function Th(e, t) {
|
|
|
16255
16255
|
}
|
|
16256
16256
|
function Eh(e, t) {
|
|
16257
16257
|
let n = document.createElement("a");
|
|
16258
|
-
n.setAttribute("data-action", "open-original"), n.className = "blok-embed-toolbar__btn", n.href = t.source, n.target = "_blank", n.rel = "noreferrer nofollow", n.setAttribute("aria-label", t.i18n.t("tools.embed.openOriginal")), n.innerHTML =
|
|
16258
|
+
n.setAttribute("data-action", "open-original"), n.className = "blok-embed-toolbar__btn", n.href = t.source, n.target = "_blank", n.rel = "noreferrer nofollow", n.setAttribute("aria-label", t.i18n.t("tools.embed.openOriginal")), n.innerHTML = ft, n.addEventListener("click", (e) => e.stopPropagation()), e.appendChild(n);
|
|
16259
16259
|
}
|
|
16260
16260
|
function Dh(e, t) {
|
|
16261
16261
|
let n = document.createElement("button");
|
|
@@ -16329,7 +16329,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16329
16329
|
height: (i = r.height) == null ? Fh : i
|
|
16330
16330
|
}, this.renderState(), !0;
|
|
16331
16331
|
}
|
|
16332
|
-
return this.isGenericAllowed() &&
|
|
16332
|
+
return this.isGenericAllowed() && Me(e) ? (this.data = {
|
|
16333
16333
|
service: "",
|
|
16334
16334
|
source: e,
|
|
16335
16335
|
embed: e,
|
|
@@ -16452,7 +16452,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16452
16452
|
let n = document.createElement("div");
|
|
16453
16453
|
n.setAttribute("data-role", "embed-url-bar"), n.setAttribute("data-valid", "false"), n.className = "blok-embed-empty__bar";
|
|
16454
16454
|
let r = document.createElement("span");
|
|
16455
|
-
r.className = "blok-embed-empty__bar-icon", r.setAttribute("aria-hidden", "true"), r.innerHTML =
|
|
16455
|
+
r.className = "blok-embed-empty__bar-icon", r.setAttribute("aria-hidden", "true"), r.innerHTML = ce;
|
|
16456
16456
|
let i = document.createElement("input");
|
|
16457
16457
|
i.type = "url", i.setAttribute("data-role", "embed-url-input"), i.className = "blok-embed-empty__input", i.setAttribute("placeholder", this.api.i18n.t("tools.embed.urlPlaceholder")), i.setAttribute("aria-label", this.api.i18n.t("tools.embed.urlPlaceholder")), i.autocomplete = "off", i.spellcheck = !1;
|
|
16458
16458
|
let a = document.createElement("button");
|
|
@@ -16468,7 +16468,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16468
16468
|
}
|
|
16469
16469
|
looksLikeUrl(e) {
|
|
16470
16470
|
let t = e.trim();
|
|
16471
|
-
return t === "" ? !1 :
|
|
16471
|
+
return t === "" ? !1 : Me(t) || /^[\w-]+(\.[\w-]+)+([/?#].*)?$/i.test(t);
|
|
16472
16472
|
}
|
|
16473
16473
|
submitUrl(e, t) {
|
|
16474
16474
|
var n;
|
|
@@ -16545,7 +16545,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16545
16545
|
renderSettings() {
|
|
16546
16546
|
let e = this.api.i18n;
|
|
16547
16547
|
return [{
|
|
16548
|
-
icon:
|
|
16548
|
+
icon: Ce,
|
|
16549
16549
|
title: e.t("tools.embed.replace"),
|
|
16550
16550
|
name: "embed-replace",
|
|
16551
16551
|
closeOnActivate: !0,
|
|
@@ -16631,7 +16631,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16631
16631
|
if (o.success !== 1) throw Error("Metadata request was unsuccessful.");
|
|
16632
16632
|
let s = (n = o.meta) == null ? {} : n;
|
|
16633
16633
|
return {
|
|
16634
|
-
url: o.link &&
|
|
16634
|
+
url: o.link && Me(o.link) ? o.link : e,
|
|
16635
16635
|
title: s.title,
|
|
16636
16636
|
description: s.description,
|
|
16637
16637
|
image: (r = s.image) == null ? void 0 : r.url,
|
|
@@ -16646,7 +16646,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16646
16646
|
}
|
|
16647
16647
|
static get toolbox() {
|
|
16648
16648
|
return {
|
|
16649
|
-
icon:
|
|
16649
|
+
icon: Bn,
|
|
16650
16650
|
titleKey: "bookmark",
|
|
16651
16651
|
searchTerms: [
|
|
16652
16652
|
"bookmark",
|
|
@@ -16666,7 +16666,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16666
16666
|
onPaste(e) {
|
|
16667
16667
|
if (e.type !== "pattern") return;
|
|
16668
16668
|
let t = e.detail.data;
|
|
16669
|
-
|
|
16669
|
+
Me(t) && this.startFetch(t);
|
|
16670
16670
|
}
|
|
16671
16671
|
render() {
|
|
16672
16672
|
let e = document.createElement("div");
|
|
@@ -16714,7 +16714,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16714
16714
|
buildCard() {
|
|
16715
16715
|
var e;
|
|
16716
16716
|
let t = document.createElement("a");
|
|
16717
|
-
t.classList.add("blok-bookmark"), t.setAttribute("data-blok-testid", "bookmark-card"),
|
|
16717
|
+
t.classList.add("blok-bookmark"), t.setAttribute("data-blok-testid", "bookmark-card"), Me(this.data.url) && (t.href = this.data.url), t.target = "_blank", t.rel = "noopener noreferrer";
|
|
16718
16718
|
let n = document.createElement("div");
|
|
16719
16719
|
n.classList.add("blok-bookmark__content"), n.setAttribute("data-role", "bookmark-content");
|
|
16720
16720
|
let r = document.createElement("div");
|
|
@@ -16878,7 +16878,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16878
16878
|
}
|
|
16879
16879
|
synchronize(e) {
|
|
16880
16880
|
var t, n;
|
|
16881
|
-
let r = (t = e == null ? void 0 : e.anchorNode) == null ? e == null ? void 0 : e.focusNode : t, i = r && r.nodeType === Node.ELEMENT_NODE ? r : r == null ? void 0 : r.parentElement, a = (n = i == null ? void 0 : i.closest(
|
|
16881
|
+
let r = (t = e == null ? void 0 : e.anchorNode) == null ? e == null ? void 0 : e.focusNode : t, i = r && r.nodeType === Node.ELEMENT_NODE ? r : r == null ? void 0 : r.parentElement, a = (n = i == null ? void 0 : i.closest(ve(z.editor))) == null ? i == null ? void 0 : i.ownerDocument : n;
|
|
16882
16882
|
if (!a) return;
|
|
16883
16883
|
let o = `strong[${$.COLLAPSED_ACTIVE}="true"]`;
|
|
16884
16884
|
a.querySelectorAll(o).forEach((t) => {
|
|
@@ -16904,7 +16904,7 @@ var jh = "https://telegram.org/js/telegram-widget.js?22", Mh = "https://platform
|
|
|
16904
16904
|
var t;
|
|
16905
16905
|
let n = (t = e == null ? void 0 : e.anchorNode) == null ? e == null ? void 0 : e.focusNode : t;
|
|
16906
16906
|
if (!n) return;
|
|
16907
|
-
let r = n.nodeType === Node.ELEMENT_NODE ? n : n.parentElement, i = r == null ? void 0 : r.closest(
|
|
16907
|
+
let r = n.nodeType === Node.ELEMENT_NODE ? n : n.parentElement, i = r == null ? void 0 : r.closest(ve(z.editor));
|
|
16908
16908
|
i && i.querySelectorAll(`strong[${$.COLLAPSED_LENGTH}]`).forEach((t) => {
|
|
16909
16909
|
var n;
|
|
16910
16910
|
let r = t.getAttribute($.COLLAPSED_LENGTH);
|
|
@@ -17098,7 +17098,7 @@ var $h = {
|
|
|
17098
17098
|
let r = (t = e == null ? void 0 : e.anchorNode) == null ? e == null ? void 0 : e.focusNode : t;
|
|
17099
17099
|
if (!r) return null;
|
|
17100
17100
|
let i = r.nodeType === Node.ELEMENT_NODE ? r : r.parentElement;
|
|
17101
|
-
return i ? ((n = i.closest("[data-blok-component=\"paragraph\"]")) == null ? i.closest(
|
|
17101
|
+
return i ? ((n = i.closest("[data-blok-component=\"paragraph\"]")) == null ? i.closest(ve(z.elementContent)) : n) || i.closest(ve(z.editor)) : null;
|
|
17102
17102
|
}
|
|
17103
17103
|
}, tg, ng = class e {
|
|
17104
17104
|
constructor() {
|
|
@@ -17384,7 +17384,7 @@ var rg = (e, t) => {
|
|
|
17384
17384
|
updateToolbarButtonState() {
|
|
17385
17385
|
let e = window.getSelection();
|
|
17386
17386
|
if (!e) return;
|
|
17387
|
-
let t = e.anchorNode, n = (t == null ? void 0 : t.nodeType) === Node.ELEMENT_NODE ? t : t == null ? void 0 : t.parentElement, r = n == null ? void 0 : n.closest(
|
|
17387
|
+
let t = e.anchorNode, n = (t == null ? void 0 : t.nodeType) === Node.ELEMENT_NODE ? t : t == null ? void 0 : t.parentElement, r = n == null ? void 0 : n.closest(ve(z.editor));
|
|
17388
17388
|
if (!r) return;
|
|
17389
17389
|
let i = r.querySelector("[data-blok-testid=inline-toolbar]");
|
|
17390
17390
|
if (!(i instanceof HTMLElement)) return;
|
|
@@ -17426,7 +17426,7 @@ var rg = (e, t) => {
|
|
|
17426
17426
|
}
|
|
17427
17427
|
static findBlokScopeFromNode(e) {
|
|
17428
17428
|
let t = e.nodeType === Node.ELEMENT_NODE ? e : e.parentElement;
|
|
17429
|
-
return !t || typeof t.closest != "function" ? null : t.closest(`${
|
|
17429
|
+
return !t || typeof t.closest != "function" ? null : t.closest(`${ve(z.interface)}, ${ve(z.editor)}`);
|
|
17430
17430
|
}
|
|
17431
17431
|
static getBoundaryBold(t) {
|
|
17432
17432
|
let n = t.startContainer;
|
|
@@ -17448,7 +17448,7 @@ var rg = (e, t) => {
|
|
|
17448
17448
|
let t = e.anchorNode;
|
|
17449
17449
|
if (!t) return !1;
|
|
17450
17450
|
let n = t.nodeType === Node.ELEMENT_NODE ? t : t.parentElement;
|
|
17451
|
-
return !!(n != null && n.closest(
|
|
17451
|
+
return !!(n != null && n.closest(ve(z.editor)));
|
|
17452
17452
|
}
|
|
17453
17453
|
getRangeHtmlWithoutBold(e) {
|
|
17454
17454
|
let t = e.cloneContents();
|
|
@@ -17479,7 +17479,7 @@ var pg, mg = (e) => {
|
|
|
17479
17479
|
}
|
|
17480
17480
|
render() {
|
|
17481
17481
|
return {
|
|
17482
|
-
icon:
|
|
17482
|
+
icon: de,
|
|
17483
17483
|
name: "italic",
|
|
17484
17484
|
onActivate: () => {
|
|
17485
17485
|
this.toggleItalic();
|
|
@@ -17628,11 +17628,12 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17628
17628
|
static get sanitize() {
|
|
17629
17629
|
return { a: {
|
|
17630
17630
|
href: !0,
|
|
17631
|
-
target:
|
|
17632
|
-
rel:
|
|
17631
|
+
target: !0,
|
|
17632
|
+
rel: !0
|
|
17633
17633
|
} };
|
|
17634
17634
|
}
|
|
17635
17635
|
constructor({ api: e }) {
|
|
17636
|
+
var t;
|
|
17636
17637
|
this.INPUT_BASE_CLASSES = "hidden w-[200px] m-0 px-2 py-1 text-sm leading-[22px] font-medium text-text-primary bg-item-hover-bg border border-link-input-border rounded-lg! outline-hidden box-border appearance-none font-[inherit] placeholder:text-gray-text mobile:text-[15px] mobile:font-medium", this.DATA_ATTRIBUTES = {
|
|
17637
17638
|
buttonActive: "data-blok-link-tool-active",
|
|
17638
17639
|
buttonUnlink: "data-blok-link-tool-unlink",
|
|
@@ -17644,11 +17645,11 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17644
17645
|
button: null
|
|
17645
17646
|
}, this.inputOpened = !1, this.unlinkAvailable = !1, this.handleButtonClick = (e) => {
|
|
17646
17647
|
!this.inputOpened || !this.unlinkAvailable || (e.preventDefault(), e.stopPropagation(), e.stopImmediatePropagation(), this.restoreSelection(), this.unlink(), this.inlineToolbar.close());
|
|
17647
|
-
}, this.toolbar = e.toolbar, this.inlineToolbar = e.inlineToolbar, this.notifier = e.notifier, this.i18n = e.i18n, this.selection = new o(), this.nodes.input = this.createInput(), this.nodes.suggestion = this.createSuggestion(), this.nodes.inputWrapper = document.createElement("div"), this.nodes.inputWrapper.append(this.nodes.input, this.nodes.suggestion);
|
|
17648
|
+
}, this.toolbar = e.toolbar, this.inlineToolbar = e.inlineToolbar, this.notifier = e.notifier, this.i18n = e.i18n, this.linkConfig = (t = e.config.link) == null ? {} : t, this.selection = new o(), this.nodes.input = this.createInput(), this.nodes.suggestion = this.createSuggestion(), this.nodes.inputWrapper = document.createElement("div"), this.nodes.inputWrapper.append(this.nodes.input, this.nodes.suggestion);
|
|
17648
17649
|
}
|
|
17649
17650
|
render() {
|
|
17650
17651
|
return {
|
|
17651
|
-
icon:
|
|
17652
|
+
icon: Bn,
|
|
17652
17653
|
name: "link",
|
|
17653
17654
|
isActive: () => !!this.selection.findParentTag("A"),
|
|
17654
17655
|
children: {
|
|
@@ -17709,10 +17710,10 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17709
17710
|
}
|
|
17710
17711
|
getLinkTypeInfo(e) {
|
|
17711
17712
|
return e.startsWith("mailto:") ? {
|
|
17712
|
-
icon:
|
|
17713
|
+
icon: zt,
|
|
17713
17714
|
label: "Email address"
|
|
17714
17715
|
} : e.startsWith("#") ? {
|
|
17715
|
-
icon:
|
|
17716
|
+
icon: Ae,
|
|
17716
17717
|
label: "Jump to section"
|
|
17717
17718
|
} : {
|
|
17718
17719
|
icon: x,
|
|
@@ -17751,7 +17752,7 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17751
17752
|
}, 0));
|
|
17752
17753
|
}
|
|
17753
17754
|
getButtonElement() {
|
|
17754
|
-
let e = document.querySelector(`${
|
|
17755
|
+
let e = document.querySelector(`${ve(z.interface, ye)} [data-blok-item-name="link"]`);
|
|
17755
17756
|
return e && e !== this.nodes.button && (e.addEventListener("click", this.handleButtonClick, !0), this.nodes.button = e), e;
|
|
17756
17757
|
}
|
|
17757
17758
|
updateButtonStateAttributes(e) {
|
|
@@ -17789,7 +17790,7 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17789
17790
|
this.notifier.show({
|
|
17790
17791
|
message: this.i18n.t("tools.link.invalidLink"),
|
|
17791
17792
|
style: "error"
|
|
17792
|
-
}),
|
|
17793
|
+
}), S("Incorrect Link pasted", "warn", t);
|
|
17793
17794
|
return;
|
|
17794
17795
|
}
|
|
17795
17796
|
let n = this.prepareLink(t);
|
|
@@ -17807,15 +17808,16 @@ var gg, _g = "flex items-center gap-2 w-full mt-0.5 px-1.5 py-1.5 rounded-md tex
|
|
|
17807
17808
|
return !t && !n && !r ? "http://" + e : e;
|
|
17808
17809
|
}
|
|
17809
17810
|
insertLink(e) {
|
|
17810
|
-
|
|
17811
|
-
|
|
17812
|
-
|
|
17811
|
+
var t, n;
|
|
17812
|
+
let r = this.linkConfig.transformHref ? this.linkConfig.transformHref(e) : e, i = (t = this.linkConfig.target) == null ? "_blank" : t, a = (n = this.linkConfig.rel) == null ? "nofollow" : n, s = this.selection.findParentTag("A");
|
|
17813
|
+
if (s instanceof HTMLAnchorElement) {
|
|
17814
|
+
this.selection.expandToTag(s), s.href = r, s.target = i, s.rel = a;
|
|
17813
17815
|
return;
|
|
17814
17816
|
}
|
|
17815
|
-
let
|
|
17816
|
-
if (!
|
|
17817
|
-
let
|
|
17818
|
-
|
|
17817
|
+
let c = o.range;
|
|
17818
|
+
if (!c) return;
|
|
17819
|
+
let l = document.createElement("a");
|
|
17820
|
+
l.href = r, l.target = i, l.rel = a, l.appendChild(c.extractContents()), c.insertNode(l), this.selection.expandToTag(l);
|
|
17819
17821
|
}
|
|
17820
17822
|
unlink() {
|
|
17821
17823
|
let e = this.selection.findParentTag("A");
|
|
@@ -18097,7 +18099,7 @@ var bg = (e) => e.tagName === "MARK", xg = (e) => ag(e, bg), Sg, Cg = {
|
|
|
18097
18099
|
resolveToVar(e, t) {
|
|
18098
18100
|
if (e.startsWith("var(")) return e;
|
|
18099
18101
|
let n = t === "color" ? "text" : "bg", r = i(e, n);
|
|
18100
|
-
return r === null ? e :
|
|
18102
|
+
return r === null ? e : St(r, n);
|
|
18101
18103
|
}
|
|
18102
18104
|
};
|
|
18103
18105
|
Sg = wg, Sg.isInline = !0, Sg.title = "Color", Sg.titleKey = "marker", Sg.shortcut = "CMD+SHIFT+H", Sg.ALLOWED_STYLE_PROPS = new Set(["color", "background-color"]);
|
|
@@ -18109,7 +18111,7 @@ var Tg, Eg = (e) => e.tagName === "U", Dg = class {
|
|
|
18109
18111
|
}
|
|
18110
18112
|
render() {
|
|
18111
18113
|
return {
|
|
18112
|
-
icon:
|
|
18114
|
+
icon: ne,
|
|
18113
18115
|
name: "underline",
|
|
18114
18116
|
onActivate: () => {
|
|
18115
18117
|
this.toggleUnderline();
|
|
@@ -18260,7 +18262,7 @@ var Og, kg = (e) => e.tagName === "S", Ag = class {
|
|
|
18260
18262
|
}
|
|
18261
18263
|
render() {
|
|
18262
18264
|
return {
|
|
18263
|
-
icon:
|
|
18265
|
+
icon: Oe,
|
|
18264
18266
|
name: "strikethrough",
|
|
18265
18267
|
onActivate: () => {
|
|
18266
18268
|
this.toggleStrikethrough();
|
|
@@ -18411,7 +18413,7 @@ var jg, Mg = (e) => e.tagName === "CODE", Ng = class {
|
|
|
18411
18413
|
}
|
|
18412
18414
|
render() {
|
|
18413
18415
|
return {
|
|
18414
|
-
icon:
|
|
18416
|
+
icon: je,
|
|
18415
18417
|
name: "inlineCode",
|
|
18416
18418
|
onActivate: () => {
|
|
18417
18419
|
this.toggleCode();
|