@vincentt-xr/sdk 2.0.0-alpha.10 → 2.0.0-alpha.11
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/GROUNDING.md +90 -8
- package/dist/{CanonicalHeadFrame-D_0OzdB9.cjs → CanonicalHeadFrame-CZFvPzN_.cjs} +1 -1
- package/dist/{CanonicalHeadFrame-DdUqF6Fv.js → CanonicalHeadFrame-vn-jM9fG.js} +3 -3
- package/dist/{DebuggerUI-D-rcPa54.js → DebuggerUI-DDpU-nBF.js} +1 -1
- package/dist/{DebuggerUI-CVuV-VJ5.cjs → DebuggerUI-Db-1VtQJ.cjs} +1 -1
- package/dist/{FaceRetouch-C1AxBNex.js → FaceRetouch-D2xH5OpW.js} +4 -4
- package/dist/{FaceRetouch-D7kryDE6.cjs → FaceRetouch-DHhn1nSV.cjs} +1 -1
- package/dist/TextLabel-Ctp-a7g9.cjs +2 -0
- package/dist/{TextLabel-c9BCucOI.js → TextLabel-Dgt-uNN9.js} +312 -289
- package/dist/{bodyMaskMaterial-Cs2awskk.js → bodyMaskMaterial-C3aXItLo.js} +1 -1
- package/dist/{bodyMaskMaterial-CBWub5t_.cjs → bodyMaskMaterial-Q6rYywwW.cjs} +1 -1
- package/dist/{cache-2x3CUJuY.js → cache-C85JjyZA.js} +2 -2
- package/dist/{cache-DL1Dbz6k.cjs → cache-DFqZYsHC.cjs} +1 -1
- package/dist/components/ScreenImage/ScreenImage.d.ts +3 -0
- package/dist/components/ScreenShape/index.d.ts +3 -0
- package/dist/components/ScreenText/index.d.ts +4 -1
- package/dist/components/SegmentationOverlay/settings.d.ts +2 -2
- package/dist/components/TextLabel/TextLabel.d.ts +1 -1
- package/dist/{contexts-Y_FhdnIv.js → contexts-B5GODwuV.js} +2 -2
- package/dist/{contexts-DQc7zyqT.cjs → contexts-CSz9stBV.cjs} +1 -1
- package/dist/coordinates/index.d.ts +1 -1
- package/dist/coordinates/viewport.d.ts +10 -0
- package/dist/debug-ui/media-source.cjs +1 -1
- package/dist/debug-ui/media-source.js +1 -1
- package/dist/debug-ui.cjs +1 -1
- package/dist/debug-ui.js +11 -11
- package/dist/{drawNormalizedCrop-DG3gtJxf.js → drawNormalizedCrop-BLfB484W.js} +5 -5
- package/dist/{drawNormalizedCrop-C4KFaRne.cjs → drawNormalizedCrop-DaGT5mZ5.cjs} +1 -1
- package/dist/entries/core.d.ts +1 -1
- package/dist/face-effects.cjs +1 -1
- package/dist/face-effects.js +17 -17
- package/dist/footage-input/index.d.ts +46 -0
- package/dist/{getFaceInfo-BzlwHMjX.cjs → getFaceInfo-BbcKq8PJ.cjs} +1 -1
- package/dist/{getFaceInfo-BafgGT27.js → getFaceInfo-D_tCSQC7.js} +1 -1
- package/dist/{index-DiIoHK_4.js → index-B9DdHE4u.js} +1 -1
- package/dist/{index-Dv3WnY9n.cjs → index-Bxb_UcfF.cjs} +3 -3
- package/dist/{index-iIQ9jBDb.js → index-CNt8esFO.js} +1 -1
- package/dist/{index-CKRN-xJp.js → index-CTqQJj5p.js} +1249 -1175
- package/dist/{index-BZoBxyLn.js → index-CXaj3tOT.js} +365 -360
- package/dist/{index-C-Mryx_u.cjs → index-CYwAL_d7.cjs} +1 -1
- package/dist/{index-ItufYyHH.cjs → index-CelqbDSR.cjs} +1 -1
- package/dist/{index-vr2ichWQ.js → index-D10O6vqR.js} +2 -2
- package/dist/{index-S3gqudT6.cjs → index-DIYaENN3.cjs} +1 -1
- package/dist/{index-CUldCMRl.js → index-DlP4xxaT.js} +1 -1
- package/dist/{index-D-4w34GO.cjs → index-DzdKBXGE.cjs} +1 -1
- package/dist/index-J3Qy6hi3.cjs +1 -0
- package/dist/{index-By_LCo2V.cjs → index-LC2Xs08E.cjs} +1 -1
- package/dist/{index-Cyk_VIZE.js → index-WkEZBuB4.js} +4 -4
- package/dist/instructions.cjs +1 -1
- package/dist/instructions.js +8 -8
- package/dist/{internal-Bb9ZXbpr.cjs → internal-DS8Pdlsm.cjs} +1 -1
- package/dist/{internal-Gt1wn6Z3.js → internal-TD4QhIry.js} +3 -3
- package/dist/internal.cjs +1 -1
- package/dist/internal.js +2 -2
- package/dist/{landmarks-BEjJXcnE.cjs → landmarks-BP6RbRHN.cjs} +1 -1
- package/dist/{landmarks-DtCAFV_m.js → landmarks-vLy5QKt6.js} +1 -1
- package/dist/low-level.cjs +1 -1
- package/dist/low-level.js +40 -40
- package/dist/main.cjs +1 -1
- package/dist/main.js +234 -230
- package/dist/particles.cjs +1 -1
- package/dist/particles.js +5 -5
- package/dist/product.cjs +1 -1
- package/dist/product.js +2 -2
- package/dist/{providers-CEZQgz2s.cjs → providers-BRSbw214.cjs} +1 -1
- package/dist/{providers-CRuaD8bi.js → providers-DmJlgrDD.js} +3 -3
- package/dist/{renderGroups-BADrepA1.cjs → renderGroups-B0N58SIA.cjs} +1 -1
- package/dist/{renderGroups-CNB99dZ2.js → renderGroups-BcQYy_J2.js} +1 -1
- package/dist/{renderPasses-DgxUKn9b.cjs → renderPasses-Bt8k0dkm.cjs} +1 -1
- package/dist/{renderPasses-DuapJA6V.js → renderPasses-DIPTIU_x.js} +4 -4
- package/dist/scene-object.cjs +1 -1
- package/dist/scene-object.js +2 -2
- package/dist/screen2d/coordinates.d.ts +37 -0
- package/dist/{segmentation-BOZJdWFC.js → segmentation-CZs5aVvY.js} +1 -1
- package/dist/{segmentation-J8GoNBvP.cjs → segmentation-Cz7oeNcS.cjs} +1 -1
- package/dist/{selectors-QB2qsaxy.cjs → selectors-Bq6tSgOY.cjs} +1 -1
- package/dist/{selectors-BvJepq6H.js → selectors-K5JKCWxw.js} +1 -1
- package/dist/{session-BVX859as.cjs → session-3aCMNb8W.cjs} +1 -1
- package/dist/{session-Cz8aie4K.js → session-DHBNTyJJ.js} +1 -1
- package/dist/tracking.cjs +1 -1
- package/dist/tracking.js +75 -75
- package/dist/{trigger-D9L4GPmQ.js → trigger-BwZ81ENx.js} +7 -7
- package/dist/{trigger-DZ9vU7jo.cjs → trigger-UjeJY5uh.cjs} +1 -1
- package/dist/{useBodies-BYzJpQ4L.js → useBodies-BMKHXAOL.js} +2 -2
- package/dist/{useBodies-Cxpmx6Bb.cjs → useBodies-CXomEo0i.cjs} +1 -1
- package/dist/{useFaceInfo-DlLRAVNw.cjs → useFaceInfo-BEMMiZxw.cjs} +1 -1
- package/dist/{useFaceInfo-BzEUj2OI.js → useFaceInfo-BNVdnprN.js} +4 -4
- package/dist/{useFaceResultReader-Cc4Qrutf.js → useFaceResultReader-B15wn6RB.js} +1 -1
- package/dist/{useFaceResultReader-D3jOQNKz.cjs → useFaceResultReader-D9qibKmm.cjs} +1 -1
- package/dist/{useIrisTracking-Bz4uLDa7.js → useIrisTracking-CYm-KDIZ.js} +10 -10
- package/dist/{useIrisTracking-DRGWgoNy.cjs → useIrisTracking-DExhnhlt.cjs} +1 -1
- package/dist/{useXRCapabilities-B1KLckqw.js → useXRCapabilities-ClWlG5_Y.js} +1 -1
- package/dist/{useXRCapabilities-CZlPUBjF.cjs → useXRCapabilities-D-EhcDzM.cjs} +1 -1
- package/dist/utils/useEditOverrides.d.ts +26 -0
- package/docs/api/face-info.mdx +1 -1
- package/docs/api/screen-space-coordinates.mdx +17 -9
- package/docs/api/session-lifecycle.mdx +29 -0
- package/package.json +1 -1
- package/settings.json +64 -13
- package/dist/TextLabel-XE0rQSDn.cjs +0 -2
- package/dist/index-Sho4F4it.cjs +0 -1
|
@@ -1,18 +1,39 @@
|
|
|
1
|
-
import { jsx as
|
|
2
|
-
import { useMemo as
|
|
3
|
-
import { useThree as
|
|
1
|
+
import { jsx as z, jsxs as xe } from "react/jsx-runtime";
|
|
2
|
+
import { useMemo as B, useSyncExternalStore as Ce, forwardRef as Le, useEffect as me, useState as he, useRef as U } from "react";
|
|
3
|
+
import { useThree as Oe } from "@react-three/fiber";
|
|
4
4
|
import { b as Fe } from "./context-DTxSQvp4.js";
|
|
5
|
-
import * as
|
|
6
|
-
const
|
|
7
|
-
const { camera: n, size: i } =
|
|
5
|
+
import * as We from "three";
|
|
6
|
+
const it = ({ children: t, depth: e = 0 }) => {
|
|
7
|
+
const { camera: n, size: i } = Oe(), a = B(() => {
|
|
8
8
|
if (!n.isPerspectiveCamera)
|
|
9
9
|
return { width: 10, height: 10 };
|
|
10
10
|
const r = n, l = Math.abs(r.position.z - e), f = r.fov * Math.PI / 180, s = 2 * Math.tan(f / 2) * l;
|
|
11
11
|
return { width: s * (i.width / i.height), height: s };
|
|
12
12
|
}, [n, i, e]);
|
|
13
|
-
return /* @__PURE__ */
|
|
14
|
-
},
|
|
15
|
-
|
|
13
|
+
return /* @__PURE__ */ z(Fe.Provider, { value: a, children: /* @__PURE__ */ z("group", { position: [0, 0, e], children: t }) });
|
|
14
|
+
}, Ye = "__VCT_EDIT_OVERRIDES__";
|
|
15
|
+
function ke() {
|
|
16
|
+
const t = globalThis[Ye];
|
|
17
|
+
return t && typeof t.subscribe == "function" && typeof t.version == "function" && typeof t.get == "function" ? t : void 0;
|
|
18
|
+
}
|
|
19
|
+
const Pe = () => () => {
|
|
20
|
+
}, ce = () => 0;
|
|
21
|
+
function He(t, e) {
|
|
22
|
+
const n = ke();
|
|
23
|
+
if (Ce(
|
|
24
|
+
n ? n.subscribe : Pe,
|
|
25
|
+
n ? n.version : ce,
|
|
26
|
+
ce
|
|
27
|
+
), !n) return t;
|
|
28
|
+
const i = n.get(t);
|
|
29
|
+
if (!i) return t;
|
|
30
|
+
let a = null;
|
|
31
|
+
for (const r of e)
|
|
32
|
+
Object.prototype.hasOwnProperty.call(i, r) && (a ?? (a = { ...t }), a[r] = i[r]);
|
|
33
|
+
return a ?? t;
|
|
34
|
+
}
|
|
35
|
+
const Se = Le(
|
|
36
|
+
({ texture: t, name: e, overlay: n, opacity: i, position: a, rotation: r, scale: l, visible: f, renderOrder: s }, h) => /* @__PURE__ */ xe(
|
|
16
37
|
"mesh",
|
|
17
38
|
{
|
|
18
39
|
ref: h,
|
|
@@ -23,8 +44,8 @@ const Qe = ({ children: t, depth: e = 0 }) => {
|
|
|
23
44
|
visible: f,
|
|
24
45
|
renderOrder: s,
|
|
25
46
|
children: [
|
|
26
|
-
/* @__PURE__ */
|
|
27
|
-
/* @__PURE__ */
|
|
47
|
+
/* @__PURE__ */ z("planeGeometry", { args: [1, 1] }),
|
|
48
|
+
/* @__PURE__ */ z(
|
|
28
49
|
"meshBasicMaterial",
|
|
29
50
|
{
|
|
30
51
|
map: t,
|
|
@@ -38,8 +59,8 @@ const Qe = ({ children: t, depth: e = 0 }) => {
|
|
|
38
59
|
}
|
|
39
60
|
)
|
|
40
61
|
);
|
|
41
|
-
|
|
42
|
-
const
|
|
62
|
+
Se.displayName = "TextLabelMesh";
|
|
63
|
+
const Xe = {
|
|
43
64
|
color: "#ffffff",
|
|
44
65
|
strokeWidth: 0,
|
|
45
66
|
strokeOpacity: 1,
|
|
@@ -73,27 +94,27 @@ const We = {
|
|
|
73
94
|
strikethrough: !1,
|
|
74
95
|
bendPreset: "arc",
|
|
75
96
|
bendStrength: 0
|
|
76
|
-
},
|
|
77
|
-
|
|
97
|
+
}, Ae = (t) => {
|
|
98
|
+
me(
|
|
78
99
|
() => () => {
|
|
79
100
|
t == null || t.dispose();
|
|
80
101
|
},
|
|
81
102
|
[t]
|
|
82
103
|
);
|
|
83
104
|
};
|
|
84
|
-
function
|
|
105
|
+
function pe(t, e, n) {
|
|
85
106
|
return n === "left" ? e : n === "right" ? t - e : t / 2;
|
|
86
107
|
}
|
|
87
|
-
function
|
|
108
|
+
function Be(t, e, n, i, a) {
|
|
88
109
|
return a === "top" ? e + n / 2 : a === "bottom" ? t - e - i + n / 2 : t / 2 - (i - n) / 2;
|
|
89
110
|
}
|
|
90
|
-
function
|
|
111
|
+
function ze(t, e, n, i) {
|
|
91
112
|
return i === "full" || n === "left" ? 0 : n === "right" ? t - e : (t - e) / 2;
|
|
92
113
|
}
|
|
93
|
-
function
|
|
114
|
+
function ye(t, e, n, i) {
|
|
94
115
|
return `${t} ${e} ${n}px ${i}`;
|
|
95
116
|
}
|
|
96
|
-
function
|
|
117
|
+
function I(t, e) {
|
|
97
118
|
const n = Math.max(0, Math.min(e, 1));
|
|
98
119
|
return t * n * 0.08;
|
|
99
120
|
}
|
|
@@ -101,35 +122,35 @@ function we(t, e) {
|
|
|
101
122
|
const n = Math.max(0, Math.min(e, 1));
|
|
102
123
|
return t * (1.2 + n * 0.6);
|
|
103
124
|
}
|
|
104
|
-
function
|
|
125
|
+
function ve(t, e) {
|
|
105
126
|
"letterSpacing" in t && (t.letterSpacing = `${e}px`);
|
|
106
127
|
}
|
|
107
|
-
function
|
|
128
|
+
function Te(t) {
|
|
108
129
|
"letterSpacing" in t && (t.letterSpacing = "0px");
|
|
109
130
|
}
|
|
110
|
-
function
|
|
111
|
-
|
|
131
|
+
function H(t, e, n) {
|
|
132
|
+
ve(t, n);
|
|
112
133
|
const i = t.measureText(e).width;
|
|
113
|
-
return
|
|
134
|
+
return Te(t), i;
|
|
114
135
|
}
|
|
115
|
-
function
|
|
136
|
+
function J(t, e, n, i) {
|
|
116
137
|
return Math.max(1, Math.floor((t - e * 2) / we(n, i)));
|
|
117
138
|
}
|
|
118
|
-
function
|
|
119
|
-
return e.length <= i && e.every((r) =>
|
|
139
|
+
function Ie(t, e, n, i, a) {
|
|
140
|
+
return e.length <= i && e.every((r) => H(t, r, a) <= n);
|
|
120
141
|
}
|
|
121
|
-
function
|
|
122
|
-
t.font =
|
|
142
|
+
function K(t, e, n, i, a, r, l, f) {
|
|
143
|
+
t.font = ye(i, a, r, l);
|
|
123
144
|
const s = e.split(" "), h = [];
|
|
124
145
|
let o = "";
|
|
125
146
|
for (const d of s) {
|
|
126
|
-
const
|
|
127
|
-
|
|
147
|
+
const c = o ? `${o} ${d}` : d;
|
|
148
|
+
H(t, c, f) > n && o ? (h.push(o), o = d) : o = c;
|
|
128
149
|
}
|
|
129
150
|
return o && h.push(o), h;
|
|
130
151
|
}
|
|
131
152
|
function ge(t, e, n, i, a, r, l, f) {
|
|
132
|
-
const h = e.split(/\r?\n/).flatMap((o) => o.trim().length === 0 ? [""] :
|
|
153
|
+
const h = e.split(/\r?\n/).flatMap((o) => o.trim().length === 0 ? [""] : K(
|
|
133
154
|
t,
|
|
134
155
|
o,
|
|
135
156
|
n,
|
|
@@ -144,13 +165,13 @@ function ge(t, e, n, i, a, r, l, f) {
|
|
|
144
165
|
function Me(t, e, n, i, a) {
|
|
145
166
|
const r = i ? "..." : "";
|
|
146
167
|
let l = e.trimEnd();
|
|
147
|
-
for (; l.length > 0 &&
|
|
168
|
+
for (; l.length > 0 && H(t, `${l}${r}`, a) > n; )
|
|
148
169
|
l = l.slice(0, -1).trimEnd();
|
|
149
170
|
return `${l}${r}`;
|
|
150
171
|
}
|
|
151
|
-
function
|
|
172
|
+
function Q(t, e, n, i, a) {
|
|
152
173
|
return e.map((r, l) => {
|
|
153
|
-
if (
|
|
174
|
+
if (H(t, r, a) <= n) return r;
|
|
154
175
|
const f = l === e.length - 1;
|
|
155
176
|
return Me(
|
|
156
177
|
t,
|
|
@@ -161,9 +182,9 @@ function V(t, e, n, i, a) {
|
|
|
161
182
|
);
|
|
162
183
|
});
|
|
163
184
|
}
|
|
164
|
-
function
|
|
185
|
+
function de(t, e, n, i, a, r) {
|
|
165
186
|
if (e.length <= n)
|
|
166
|
-
return
|
|
187
|
+
return Q(
|
|
167
188
|
t,
|
|
168
189
|
e,
|
|
169
190
|
i,
|
|
@@ -177,7 +198,7 @@ function ce(t, e, n, i, a, r) {
|
|
|
177
198
|
i,
|
|
178
199
|
a,
|
|
179
200
|
r
|
|
180
|
-
),
|
|
201
|
+
), Q(
|
|
181
202
|
t,
|
|
182
203
|
l,
|
|
183
204
|
i,
|
|
@@ -185,7 +206,7 @@ function ce(t, e, n, i, a, r) {
|
|
|
185
206
|
r
|
|
186
207
|
);
|
|
187
208
|
}
|
|
188
|
-
function
|
|
209
|
+
function Ee(t) {
|
|
189
210
|
const {
|
|
190
211
|
ctx: e,
|
|
191
212
|
text: n,
|
|
@@ -198,12 +219,12 @@ function Xe(t) {
|
|
|
198
219
|
fontSize: h,
|
|
199
220
|
fontFamily: o,
|
|
200
221
|
letterSpacing: d,
|
|
201
|
-
lineSpacing:
|
|
222
|
+
lineSpacing: c,
|
|
202
223
|
overflow: u,
|
|
203
224
|
resizeToFit: S,
|
|
204
|
-
minFontSize:
|
|
225
|
+
minFontSize: g
|
|
205
226
|
} = t;
|
|
206
|
-
let b = h, m =
|
|
227
|
+
let b = h, m = I(b, d), y = i ?? ge(
|
|
207
228
|
e,
|
|
208
229
|
n,
|
|
209
230
|
a,
|
|
@@ -212,9 +233,9 @@ function Xe(t) {
|
|
|
212
233
|
b,
|
|
213
234
|
o,
|
|
214
235
|
m
|
|
215
|
-
),
|
|
236
|
+
), v = J(r, l, b, c);
|
|
216
237
|
const C = S === !0 || u === "shrink";
|
|
217
|
-
for (; C && !
|
|
238
|
+
for (; C && !Ie(e, y, a, v, m) && b > g && (b = Math.max(g, b - 4), m = I(b, d), y = i ?? ge(
|
|
218
239
|
e,
|
|
219
240
|
n,
|
|
220
241
|
a,
|
|
@@ -223,25 +244,25 @@ function Xe(t) {
|
|
|
223
244
|
b,
|
|
224
245
|
o,
|
|
225
246
|
m
|
|
226
|
-
),
|
|
247
|
+
), v = J(r, l, b, c), b !== g); )
|
|
227
248
|
;
|
|
228
|
-
return u === "ellipsis" ?
|
|
249
|
+
return u === "ellipsis" ? y = de(
|
|
229
250
|
e,
|
|
230
|
-
|
|
231
|
-
|
|
251
|
+
y,
|
|
252
|
+
v,
|
|
232
253
|
a,
|
|
233
254
|
!0,
|
|
234
255
|
m
|
|
235
|
-
) : u === "clamp" || u === "shrink" ?
|
|
256
|
+
) : u === "clamp" || u === "shrink" ? y = de(
|
|
236
257
|
e,
|
|
237
|
-
|
|
238
|
-
|
|
258
|
+
y,
|
|
259
|
+
v,
|
|
239
260
|
a,
|
|
240
261
|
!1,
|
|
241
262
|
m
|
|
242
|
-
) : u !== "clip" && (
|
|
263
|
+
) : u !== "clip" && (y = Q(e, y, a, void 0, m)), { fontSize: b, lines: y };
|
|
243
264
|
}
|
|
244
|
-
function
|
|
265
|
+
function Re(t) {
|
|
245
266
|
const {
|
|
246
267
|
ctx: e,
|
|
247
268
|
text: n,
|
|
@@ -255,27 +276,27 @@ function Ae(t) {
|
|
|
255
276
|
letterSpacing: o,
|
|
256
277
|
lineSpacing: d
|
|
257
278
|
} = t;
|
|
258
|
-
let
|
|
279
|
+
let c = s, u = K(
|
|
259
280
|
e,
|
|
260
281
|
n,
|
|
261
282
|
i,
|
|
262
283
|
l,
|
|
263
284
|
f,
|
|
264
|
-
|
|
285
|
+
c,
|
|
265
286
|
h,
|
|
266
|
-
|
|
287
|
+
I(c, o)
|
|
267
288
|
);
|
|
268
|
-
const S =
|
|
269
|
-
return u.length > S && (
|
|
289
|
+
const S = J(a, r, c, d);
|
|
290
|
+
return u.length > S && (c = Math.max(12, Math.round(c * 0.75)), u = K(
|
|
270
291
|
e,
|
|
271
292
|
n,
|
|
272
293
|
i,
|
|
273
294
|
l,
|
|
274
295
|
f,
|
|
275
|
-
|
|
296
|
+
c,
|
|
276
297
|
h,
|
|
277
|
-
|
|
278
|
-
)), { fontSize:
|
|
298
|
+
I(c, o)
|
|
299
|
+
)), { fontSize: c, lines: u };
|
|
279
300
|
}
|
|
280
301
|
function Z(t, e) {
|
|
281
302
|
return typeof OffscreenCanvas < "u" ? new OffscreenCanvas(t, e) : (() => {
|
|
@@ -283,9 +304,9 @@ function Z(t, e) {
|
|
|
283
304
|
return n.width = t, n.height = e, n;
|
|
284
305
|
})();
|
|
285
306
|
}
|
|
286
|
-
function
|
|
307
|
+
function De(t, e) {
|
|
287
308
|
const n = e.width - e.padding * 2, a = Array.isArray(e.lines) || e.text.includes(`
|
|
288
|
-
`) || e.overflow !== void 0 || e.resizeToFit !== void 0 ?
|
|
309
|
+
`) || e.overflow !== void 0 || e.resizeToFit !== void 0 ? Ee({
|
|
289
310
|
ctx: t,
|
|
290
311
|
text: e.text,
|
|
291
312
|
explicitLines: e.lines,
|
|
@@ -301,7 +322,7 @@ function pe(t, e) {
|
|
|
301
322
|
minFontSize: e.minFontSize,
|
|
302
323
|
letterSpacing: e.letterSpacing,
|
|
303
324
|
lineSpacing: e.lineSpacing
|
|
304
|
-
}) :
|
|
325
|
+
}) : Re({
|
|
305
326
|
ctx: t,
|
|
306
327
|
text: e.text,
|
|
307
328
|
maxWidth: n,
|
|
@@ -314,18 +335,18 @@ function pe(t, e) {
|
|
|
314
335
|
letterSpacing: e.letterSpacing,
|
|
315
336
|
lineSpacing: e.lineSpacing
|
|
316
337
|
}), r = a.fontSize, l = a.lines;
|
|
317
|
-
t.font =
|
|
318
|
-
const f =
|
|
338
|
+
t.font = ye(e.fontStyle, e.fontWeight, r, e.fontFamily);
|
|
339
|
+
const f = I(r, e.letterSpacing), s = we(r, e.lineSpacing), h = Math.max(
|
|
319
340
|
r,
|
|
320
341
|
r + (l.length - 1) * s
|
|
321
|
-
), o =
|
|
342
|
+
), o = Be(
|
|
322
343
|
e.height,
|
|
323
344
|
e.padding,
|
|
324
345
|
r,
|
|
325
346
|
h,
|
|
326
347
|
e.verticalAlign
|
|
327
348
|
), d = l.map(
|
|
328
|
-
(
|
|
349
|
+
(c) => H(t, c, f)
|
|
329
350
|
);
|
|
330
351
|
return {
|
|
331
352
|
fontSize: r,
|
|
@@ -338,23 +359,23 @@ function pe(t, e) {
|
|
|
338
359
|
Math.max(0, Math.max(...d, 0)) + e.padding * 2
|
|
339
360
|
),
|
|
340
361
|
textBlockHeight: Math.min(e.height, h + e.padding * 2),
|
|
341
|
-
textX:
|
|
362
|
+
textX: pe(e.width, e.padding, e.textAlign)
|
|
342
363
|
};
|
|
343
364
|
}
|
|
344
|
-
function
|
|
365
|
+
function Ge(t, e, n, i, a, r) {
|
|
345
366
|
t.beginPath(), t.moveTo(e + r, n), t.lineTo(e + i - r, n), t.quadraticCurveTo(e + i, n, e + i, n + r), t.lineTo(e + i, n + a - r), t.quadraticCurveTo(e + i, n + a, e + i - r, n + a), t.lineTo(e + r, n + a), t.quadraticCurveTo(e, n + a, e, n + a - r), t.lineTo(e, n + r), t.quadraticCurveTo(e, n, e + r, n), t.closePath();
|
|
346
367
|
}
|
|
347
|
-
function
|
|
368
|
+
function ue(t, e, n) {
|
|
348
369
|
return typeof t != "number" || Number.isNaN(t) || t <= 0 ? e : Math.min(t, n);
|
|
349
370
|
}
|
|
350
|
-
function
|
|
351
|
-
const n =
|
|
371
|
+
function $e(t, e) {
|
|
372
|
+
const n = ze(
|
|
352
373
|
e.canvasWidth,
|
|
353
374
|
e.panelWidth,
|
|
354
375
|
e.textAlign,
|
|
355
376
|
e.bgFit
|
|
356
377
|
), i = (e.canvasHeight - e.panelHeight) / 2, a = Math.min(e.borderRadius, Math.min(e.panelWidth, e.panelHeight) / 2);
|
|
357
|
-
|
|
378
|
+
Ge(t, n, i, e.panelWidth, e.panelHeight, a), _e(t, {
|
|
358
379
|
panelX: n,
|
|
359
380
|
panelY: i,
|
|
360
381
|
panelWidth: e.panelWidth,
|
|
@@ -369,7 +390,7 @@ function ze(t, e) {
|
|
|
369
390
|
bgTextureFlipY: e.bgTextureFlipY
|
|
370
391
|
}), e.borderColor && e.borderWidth > 0 && (t.lineWidth = e.borderWidth, t.strokeStyle = e.borderColor, t.stroke());
|
|
371
392
|
}
|
|
372
|
-
function
|
|
393
|
+
function _e(t, e) {
|
|
373
394
|
if (t.save(), t.globalAlpha = Math.max(0, Math.min(e.bgOpacity, 1)), e.bgFillMode === "gradient" && e.bgGradientStops && e.bgGradientStops.length > 1) {
|
|
374
395
|
const n = t.createLinearGradient(
|
|
375
396
|
e.panelX,
|
|
@@ -383,7 +404,7 @@ function Ie(t, e) {
|
|
|
383
404
|
return;
|
|
384
405
|
}
|
|
385
406
|
if (e.bgTextureImage) {
|
|
386
|
-
t.clip(),
|
|
407
|
+
t.clip(), qe(t, {
|
|
387
408
|
image: e.bgTextureImage,
|
|
388
409
|
x: e.panelX,
|
|
389
410
|
y: e.panelY,
|
|
@@ -397,17 +418,17 @@ function Ie(t, e) {
|
|
|
397
418
|
}
|
|
398
419
|
t.fillStyle = e.bgColor, t.fill(), t.restore();
|
|
399
420
|
}
|
|
400
|
-
function
|
|
421
|
+
function qe(t, e) {
|
|
401
422
|
const { image: n, x: i, y: a, width: r, height: l, fit: f, flipX: s, flipY: h } = e, o = "naturalWidth" in n ? n.naturalWidth : "videoWidth" in n ? n.videoWidth : n.width, d = "naturalHeight" in n ? n.naturalHeight : "videoHeight" in n ? n.videoHeight : n.height;
|
|
402
|
-
let
|
|
423
|
+
let c = r, u = l, S = i, g = a;
|
|
403
424
|
if (f !== "stretch" && o > 0 && d > 0) {
|
|
404
425
|
const b = f === "cover" ? Math.max(r / o, l / d) : Math.min(r / o, l / d);
|
|
405
|
-
|
|
426
|
+
c = o * b, u = d * b, S = i + (r - c) / 2, g = a + (l - u) / 2;
|
|
406
427
|
}
|
|
407
|
-
t.save(), (s || h) && (t.translate(s ? i + r : 0, h ? a + l : 0), t.scale(s ? -1 : 1, h ? -1 : 1), S = s ? -(S - i) -
|
|
428
|
+
t.save(), (s || h) && (t.translate(s ? i + r : 0, h ? a + l : 0), t.scale(s ? -1 : 1, h ? -1 : 1), S = s ? -(S - i) - c + i : S, g = h ? -(g - a) - u + a : g), t.drawImage(n, S, g, c, u), t.restore();
|
|
408
429
|
}
|
|
409
|
-
function
|
|
410
|
-
const l = a / 72, f = Math.abs(l), s = 1 - Math.min(1, Math.abs(e)), h = Math.min(1, Math.abs(e)), o = i <= 1 ? 0.5 : n / (i - 1), d = Math.sin(o * Math.PI * 2 - Math.PI / 2),
|
|
430
|
+
function Ve(t, e, n, i, a, r) {
|
|
431
|
+
const l = a / 72, f = Math.abs(l), s = 1 - Math.min(1, Math.abs(e)), h = Math.min(1, Math.abs(e)), o = i <= 1 ? 0.5 : n / (i - 1), d = Math.sin(o * Math.PI * 2 - Math.PI / 2), c = Math.sin(o * Math.PI * 2.7 - Math.PI / 2) * (0.65 + o * 0.35), u = a * e * e, S = 2 * a * e / r, g = {
|
|
411
432
|
xOffset: 0,
|
|
412
433
|
yOffset: 0,
|
|
413
434
|
rotation: 0,
|
|
@@ -416,116 +437,116 @@ function Ee(t, e, n, i, a, r) {
|
|
|
416
437
|
};
|
|
417
438
|
switch (t) {
|
|
418
439
|
case "arc":
|
|
419
|
-
return { ...
|
|
440
|
+
return { ...g, yOffset: u, rotation: Math.atan(S) };
|
|
420
441
|
case "arc-lower":
|
|
421
442
|
return {
|
|
422
|
-
...
|
|
443
|
+
...g,
|
|
423
444
|
yOffset: u * 0.55,
|
|
424
445
|
scaleY: Math.max(0.2, 1 + l * e * e * 0.45)
|
|
425
446
|
};
|
|
426
447
|
case "arc-upper":
|
|
427
448
|
return {
|
|
428
|
-
...
|
|
449
|
+
...g,
|
|
429
450
|
yOffset: -u * 0.55,
|
|
430
451
|
scaleY: Math.max(0.2, 1 - l * e * e * 0.45)
|
|
431
452
|
};
|
|
432
453
|
case "arch":
|
|
433
|
-
return { ...
|
|
454
|
+
return { ...g, yOffset: u };
|
|
434
455
|
case "bulge":
|
|
435
|
-
return { ...
|
|
456
|
+
return { ...g, scaleY: Math.max(0.2, 1 + l * s * 0.75) };
|
|
436
457
|
case "shell-lower":
|
|
437
458
|
return {
|
|
438
|
-
...
|
|
459
|
+
...g,
|
|
439
460
|
yOffset: a * 0.45 * o * s,
|
|
440
461
|
scaleY: Math.max(0.2, 1 + l * o * s)
|
|
441
462
|
};
|
|
442
463
|
case "shell-upper":
|
|
443
464
|
return {
|
|
444
|
-
...
|
|
465
|
+
...g,
|
|
445
466
|
yOffset: -a * 0.45 * (1 - o) * s,
|
|
446
467
|
scaleY: Math.max(0.2, 1 + l * (1 - o) * s)
|
|
447
468
|
};
|
|
448
469
|
case "flag":
|
|
449
470
|
return {
|
|
450
|
-
...
|
|
451
|
-
yOffset: a * 0.65 *
|
|
471
|
+
...g,
|
|
472
|
+
yOffset: a * 0.65 * c,
|
|
452
473
|
rotation: Math.atan(
|
|
453
474
|
a / Math.max(r, 1) * Math.cos(o * Math.PI * 2.7) * 1.6
|
|
454
475
|
)
|
|
455
476
|
};
|
|
456
477
|
case "wave":
|
|
457
478
|
return {
|
|
458
|
-
...
|
|
479
|
+
...g,
|
|
459
480
|
yOffset: a * 0.6 * d,
|
|
460
481
|
rotation: Math.atan(a / Math.max(r, 1) * Math.cos(o * Math.PI * 2) * 1.4)
|
|
461
482
|
};
|
|
462
483
|
case "fish":
|
|
463
484
|
return {
|
|
464
|
-
...
|
|
485
|
+
...g,
|
|
465
486
|
scaleX: Math.max(0.25, 1 - f * h * 0.55),
|
|
466
487
|
scaleY: Math.max(0.2, 1 + l * s)
|
|
467
488
|
};
|
|
468
489
|
case "rise":
|
|
469
|
-
return { ...
|
|
490
|
+
return { ...g, yOffset: a * e };
|
|
470
491
|
case "fisheye":
|
|
471
492
|
return {
|
|
472
|
-
...
|
|
493
|
+
...g,
|
|
473
494
|
yOffset: a * 0.18 * e * s,
|
|
474
495
|
scaleX: Math.max(0.25, 1 + l * s * 0.7),
|
|
475
496
|
scaleY: Math.max(0.2, 1 + l * s * 0.7)
|
|
476
497
|
};
|
|
477
498
|
case "inflate":
|
|
478
499
|
return {
|
|
479
|
-
...
|
|
500
|
+
...g,
|
|
480
501
|
scaleX: Math.max(0.25, 1 + l * s * 0.6),
|
|
481
502
|
scaleY: Math.max(0.2, 1 + l * s * 0.6)
|
|
482
503
|
};
|
|
483
504
|
case "squeeze":
|
|
484
|
-
return { ...
|
|
505
|
+
return { ...g, scaleY: Math.max(0.2, 1 - l * s * 0.8) };
|
|
485
506
|
case "twist":
|
|
486
507
|
return {
|
|
487
|
-
...
|
|
508
|
+
...g,
|
|
488
509
|
yOffset: a * e,
|
|
489
510
|
rotation: l * e * 0.45,
|
|
490
511
|
scaleY: Math.max(0.2, 1 + l * e * 0.25)
|
|
491
512
|
};
|
|
492
513
|
default:
|
|
493
|
-
return
|
|
514
|
+
return g;
|
|
494
515
|
}
|
|
495
516
|
}
|
|
496
|
-
function
|
|
517
|
+
function P(t, e, n, i, a, r, l = "arc", f = 0) {
|
|
497
518
|
if (f !== 0) {
|
|
498
|
-
|
|
519
|
+
Ne(t, e, n, i, a, r, l, f);
|
|
499
520
|
return;
|
|
500
521
|
}
|
|
501
|
-
|
|
522
|
+
ve(t, a), r === "fill" ? t.fillText(e, n, i) : t.strokeText(e, n, i), Te(t);
|
|
502
523
|
}
|
|
503
|
-
function
|
|
524
|
+
function Ne(t, e, n, i, a, r, l, f) {
|
|
504
525
|
const s = Array.from(e);
|
|
505
526
|
if (s.length === 0) return;
|
|
506
|
-
const h = s.map((m) => t.measureText(m).width), o = h.reduce((m,
|
|
507
|
-
let b =
|
|
527
|
+
const h = s.map((m) => t.measureText(m).width), o = h.reduce((m, y) => m + y, 0) + a * Math.max(0, s.length - 1), d = t.textAlign, c = d === "right" ? n - o : d === "center" ? n - o / 2 : n, S = Math.max(-100, Math.min(f, 100)) / 100 * 72, g = Math.max(o / 2, 1);
|
|
528
|
+
let b = c;
|
|
508
529
|
for (let m = 0; m < s.length; m++) {
|
|
509
|
-
const
|
|
530
|
+
const y = s[m], v = h[m], C = b + v / 2, F = (C - c - o / 2) / g, x = Ve(
|
|
510
531
|
l,
|
|
511
532
|
F,
|
|
512
533
|
m,
|
|
513
534
|
s.length,
|
|
514
535
|
S,
|
|
515
|
-
|
|
536
|
+
g
|
|
516
537
|
);
|
|
517
|
-
t.save(), t.translate(C +
|
|
538
|
+
t.save(), t.translate(C + x.xOffset, i + x.yOffset), t.rotate(x.rotation), t.scale(x.scaleX, x.scaleY), t.textAlign = "center", r === "fill" ? t.fillText(y, 0, 0) : t.strokeText(y, 0, 0), t.restore(), b += v + a;
|
|
518
539
|
}
|
|
519
540
|
}
|
|
520
|
-
function
|
|
521
|
-
const h =
|
|
522
|
-
t.save(), t.strokeStyle = r, t.lineWidth = Math.max(2, l * 0.06), t.lineCap = "round", t.beginPath(), t.moveTo(o,
|
|
541
|
+
function be(t, e, n, i, a, r, l, f, s) {
|
|
542
|
+
const h = H(t, e, f), o = a === "center" ? n - h / 2 : a === "right" ? n - h : n, d = s === "underline" ? l * 0.42 : -l * 0.08, c = i + d;
|
|
543
|
+
t.save(), t.strokeStyle = r, t.lineWidth = Math.max(2, l * 0.06), t.lineCap = "round", t.beginPath(), t.moveTo(o, c), t.lineTo(o + h, c), t.stroke(), t.restore();
|
|
523
544
|
}
|
|
524
|
-
function
|
|
545
|
+
function je(t, e) {
|
|
525
546
|
for (let n = 0; n < e.lines.length; n++) {
|
|
526
547
|
const i = e.lines[n], a = e.startY + n * e.lineHeight;
|
|
527
548
|
for (const r of e.shadowLayers)
|
|
528
|
-
t.save(), t.shadowColor = r.color, t.shadowBlur = r.blur, t.shadowOffsetX = r.offsetX ?? 0, t.shadowOffsetY = r.offsetY ?? 0, t.globalAlpha = r.opacity ?? 1, t.fillStyle = e.color,
|
|
549
|
+
t.save(), t.shadowColor = r.color, t.shadowBlur = r.blur, t.shadowOffsetX = r.offsetX ?? 0, t.shadowOffsetY = r.offsetY ?? 0, t.globalAlpha = r.opacity ?? 1, t.fillStyle = e.color, P(
|
|
529
550
|
t,
|
|
530
551
|
i,
|
|
531
552
|
e.textX,
|
|
@@ -536,7 +557,7 @@ function Ge(t, e) {
|
|
|
536
557
|
e.bendStrength
|
|
537
558
|
), t.restore();
|
|
538
559
|
for (const r of e.strokeLayers)
|
|
539
|
-
t.save(), t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = r.width, t.strokeStyle = r.color, t.globalAlpha = r.opacity ?? 1,
|
|
560
|
+
t.save(), t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = r.width, t.strokeStyle = r.color, t.globalAlpha = r.opacity ?? 1, P(
|
|
540
561
|
t,
|
|
541
562
|
i,
|
|
542
563
|
e.textX,
|
|
@@ -546,7 +567,7 @@ function Ge(t, e) {
|
|
|
546
567
|
e.bendPreset,
|
|
547
568
|
e.bendStrength
|
|
548
569
|
), t.restore();
|
|
549
|
-
t.save(), t.fillStyle = e.color, t.globalAlpha = 1,
|
|
570
|
+
t.save(), t.fillStyle = e.color, t.globalAlpha = 1, P(
|
|
550
571
|
t,
|
|
551
572
|
i,
|
|
552
573
|
e.textX,
|
|
@@ -555,7 +576,7 @@ function Ge(t, e) {
|
|
|
555
576
|
"fill",
|
|
556
577
|
e.bendPreset,
|
|
557
578
|
e.bendStrength
|
|
558
|
-
), t.restore(), e.underline &&
|
|
579
|
+
), t.restore(), e.underline && be(
|
|
559
580
|
t,
|
|
560
581
|
i,
|
|
561
582
|
e.textX,
|
|
@@ -565,7 +586,7 @@ function Ge(t, e) {
|
|
|
565
586
|
e.fontSize,
|
|
566
587
|
e.letterSpacingPx,
|
|
567
588
|
"underline"
|
|
568
|
-
), e.strikethrough &&
|
|
589
|
+
), e.strikethrough && be(
|
|
569
590
|
t,
|
|
570
591
|
i,
|
|
571
592
|
e.textX,
|
|
@@ -578,13 +599,13 @@ function Ge(t, e) {
|
|
|
578
599
|
);
|
|
579
600
|
}
|
|
580
601
|
}
|
|
581
|
-
function
|
|
602
|
+
function Ue(t, e) {
|
|
582
603
|
const n = Math.max(0, Math.min(e.intensity, 1));
|
|
583
604
|
if (n <= 0) return;
|
|
584
605
|
const i = Math.max(0, Math.min(e.range, 1)), a = i * 72, r = Math.max(-0.5, Math.min(e.horizontalAngle, 0.5)) * 80, l = Math.max(-0.5, Math.min(e.verticalAngle, 0.5)) * 80;
|
|
585
606
|
for (let f = 0; f < e.lines.length; f++) {
|
|
586
607
|
const s = e.startY + f * e.lineHeight;
|
|
587
|
-
t.save(), t.globalAlpha = n, t.shadowColor = e.color, t.shadowBlur = a, t.shadowOffsetX = r, t.shadowOffsetY = l, e.style === "contoured" ? (t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = Math.max(2, i * 42), t.strokeStyle = e.color,
|
|
608
|
+
t.save(), t.globalAlpha = n, t.shadowColor = e.color, t.shadowBlur = a, t.shadowOffsetX = r, t.shadowOffsetY = l, e.style === "contoured" ? (t.lineJoin = "round", t.miterLimit = 2, t.lineWidth = Math.max(2, i * 42), t.strokeStyle = e.color, P(
|
|
588
609
|
t,
|
|
589
610
|
e.lines[f],
|
|
590
611
|
e.textX,
|
|
@@ -593,7 +614,7 @@ function De(t, e) {
|
|
|
593
614
|
"stroke",
|
|
594
615
|
e.bendPreset,
|
|
595
616
|
e.bendStrength
|
|
596
|
-
)) : (t.fillStyle = e.color,
|
|
617
|
+
)) : (t.fillStyle = e.color, P(
|
|
597
618
|
t,
|
|
598
619
|
e.lines[f],
|
|
599
620
|
e.textX,
|
|
@@ -605,11 +626,11 @@ function De(t, e) {
|
|
|
605
626
|
)), t.restore();
|
|
606
627
|
}
|
|
607
628
|
}
|
|
608
|
-
function
|
|
629
|
+
function Je(t, e) {
|
|
609
630
|
const n = Z(e.width, e.height), i = n.getContext("2d");
|
|
610
631
|
i.clearRect(0, 0, e.width, e.height), i.font = e.font, i.fillStyle = "#ffffff", i.textAlign = e.textAlign, i.textBaseline = "middle";
|
|
611
632
|
for (let l = 0; l < e.lines.length; l++)
|
|
612
|
-
|
|
633
|
+
P(
|
|
613
634
|
i,
|
|
614
635
|
e.lines[l],
|
|
615
636
|
e.textX,
|
|
@@ -622,7 +643,7 @@ function qe(t, e) {
|
|
|
622
643
|
const a = Z(e.width, e.height), r = a.getContext("2d");
|
|
623
644
|
r.clearRect(0, 0, e.width, e.height), r.save(), r.globalAlpha = e.opacity, r.filter = e.blur > 0 ? `blur(${e.blur}px)` : "none", r.drawImage(n, e.offsetX, e.offsetY), r.restore(), r.globalCompositeOperation = "destination-in", r.drawImage(n, 0, 0), r.globalCompositeOperation = "source-in", r.globalAlpha = e.opacity, r.fillStyle = e.color, r.fillRect(0, 0, e.width, e.height), t.drawImage(a, 0, 0);
|
|
624
645
|
}
|
|
625
|
-
function
|
|
646
|
+
function Ke(t) {
|
|
626
647
|
const {
|
|
627
648
|
width: e,
|
|
628
649
|
height: n,
|
|
@@ -635,83 +656,83 @@ function Ne(t) {
|
|
|
635
656
|
innerShadow: h,
|
|
636
657
|
glow: o,
|
|
637
658
|
shadowColor: d,
|
|
638
|
-
shadowBlur:
|
|
659
|
+
shadowBlur: c,
|
|
639
660
|
shadowOffsetX: u,
|
|
640
661
|
shadowOffsetY: S,
|
|
641
|
-
shadowOpacity:
|
|
662
|
+
shadowOpacity: g,
|
|
642
663
|
textAlign: b,
|
|
643
664
|
bgFillMode: m,
|
|
644
|
-
bgOpacity:
|
|
645
|
-
bgFit:
|
|
665
|
+
bgOpacity: y,
|
|
666
|
+
bgFit: v,
|
|
646
667
|
bgAutoSize: C,
|
|
647
668
|
bgWidth: F,
|
|
648
|
-
bgHeight:
|
|
669
|
+
bgHeight: x,
|
|
649
670
|
bgGradientStops: L,
|
|
650
|
-
bgTextureImage:
|
|
651
|
-
bgTextureFit:
|
|
652
|
-
bgTextureFlipX:
|
|
653
|
-
bgTextureFlipY:
|
|
671
|
+
bgTextureImage: O,
|
|
672
|
+
bgTextureFit: E,
|
|
673
|
+
bgTextureFlipX: R,
|
|
674
|
+
bgTextureFlipY: D,
|
|
654
675
|
underline: G,
|
|
655
|
-
strikethrough:
|
|
676
|
+
strikethrough: $,
|
|
656
677
|
bendPreset: W,
|
|
657
678
|
bendStrength: Y
|
|
658
679
|
} = t;
|
|
659
|
-
let { fontSize:
|
|
660
|
-
const
|
|
680
|
+
let { fontSize: X, bgColor: A } = t;
|
|
681
|
+
const _ = [
|
|
661
682
|
...a ?? [],
|
|
662
683
|
...r && l > 0 ? [{ color: r, width: l, opacity: f }] : []
|
|
663
|
-
].filter((
|
|
684
|
+
].filter((M) => M.width > 0), q = [
|
|
664
685
|
...s ?? [],
|
|
665
|
-
...d && (
|
|
686
|
+
...d && (c > 0 || u !== 0 || S !== 0) ? [
|
|
666
687
|
{
|
|
667
688
|
color: d,
|
|
668
|
-
blur:
|
|
689
|
+
blur: c,
|
|
669
690
|
offsetX: u,
|
|
670
691
|
offsetY: S,
|
|
671
|
-
opacity:
|
|
692
|
+
opacity: g
|
|
672
693
|
}
|
|
673
694
|
] : []
|
|
674
|
-
].filter((
|
|
675
|
-
let
|
|
676
|
-
const
|
|
695
|
+
].filter((M) => M.blur > 0 || (M.offsetX ?? 0) !== 0 || (M.offsetY ?? 0) !== 0);
|
|
696
|
+
let k;
|
|
697
|
+
const p = Z(e, n), T = p.getContext("2d");
|
|
677
698
|
T.clearRect(0, 0, e, n), T.fillStyle = i, T.textAlign = b, T.textBaseline = "middle";
|
|
678
|
-
const
|
|
679
|
-
if (
|
|
680
|
-
const
|
|
681
|
-
|
|
682
|
-
|
|
699
|
+
const w = De(T, t);
|
|
700
|
+
if (X = w.fontSize, A !== "transparent") {
|
|
701
|
+
const M = C === !0, V = ue(
|
|
702
|
+
M ? void 0 : F,
|
|
703
|
+
v === "text" || M ? w.textBlockWidth : e,
|
|
683
704
|
e
|
|
684
|
-
),
|
|
685
|
-
|
|
686
|
-
|
|
705
|
+
), N = ue(
|
|
706
|
+
M ? void 0 : x,
|
|
707
|
+
v === "text" || M ? w.textBlockHeight : n,
|
|
687
708
|
n
|
|
688
709
|
);
|
|
689
|
-
|
|
710
|
+
$e(T, {
|
|
690
711
|
canvasWidth: e,
|
|
691
712
|
canvasHeight: n,
|
|
692
713
|
textAlign: b,
|
|
693
|
-
bgFit:
|
|
694
|
-
panelWidth:
|
|
695
|
-
panelHeight:
|
|
696
|
-
bgColor:
|
|
714
|
+
bgFit: v,
|
|
715
|
+
panelWidth: V,
|
|
716
|
+
panelHeight: N,
|
|
717
|
+
bgColor: A,
|
|
697
718
|
bgFillMode: m,
|
|
698
|
-
bgOpacity:
|
|
719
|
+
bgOpacity: y,
|
|
699
720
|
bgGradientStops: L,
|
|
700
|
-
bgTextureImage:
|
|
701
|
-
bgTextureFit:
|
|
702
|
-
bgTextureFlipX:
|
|
703
|
-
bgTextureFlipY:
|
|
721
|
+
bgTextureImage: O,
|
|
722
|
+
bgTextureFit: E,
|
|
723
|
+
bgTextureFlipX: R,
|
|
724
|
+
bgTextureFlipY: D,
|
|
704
725
|
borderColor: t.borderColor,
|
|
705
726
|
borderWidth: t.borderWidth,
|
|
706
727
|
borderRadius: t.borderRadius
|
|
707
728
|
});
|
|
708
729
|
}
|
|
709
|
-
return o &&
|
|
710
|
-
lines:
|
|
711
|
-
textX:
|
|
712
|
-
startY:
|
|
713
|
-
lineHeight:
|
|
714
|
-
letterSpacingPx:
|
|
730
|
+
return o && Ue(T, {
|
|
731
|
+
lines: w.resolvedLines,
|
|
732
|
+
textX: w.textX,
|
|
733
|
+
startY: w.startY,
|
|
734
|
+
lineHeight: w.lineHeight,
|
|
735
|
+
letterSpacingPx: w.letterSpacingPx,
|
|
715
736
|
bendPreset: W,
|
|
716
737
|
bendStrength: Y,
|
|
717
738
|
color: o.color,
|
|
@@ -720,30 +741,30 @@ function Ne(t) {
|
|
|
720
741
|
range: o.range ?? 0.5,
|
|
721
742
|
horizontalAngle: o.horizontalAngle ?? 0,
|
|
722
743
|
verticalAngle: o.verticalAngle ?? 0
|
|
723
|
-
}),
|
|
724
|
-
lines:
|
|
725
|
-
textX:
|
|
726
|
-
startY:
|
|
727
|
-
lineHeight:
|
|
744
|
+
}), je(T, {
|
|
745
|
+
lines: w.resolvedLines,
|
|
746
|
+
textX: w.textX,
|
|
747
|
+
startY: w.startY,
|
|
748
|
+
lineHeight: w.lineHeight,
|
|
728
749
|
textAlign: b,
|
|
729
750
|
color: i,
|
|
730
|
-
fontSize:
|
|
731
|
-
letterSpacingPx:
|
|
751
|
+
fontSize: X,
|
|
752
|
+
letterSpacingPx: w.letterSpacingPx,
|
|
732
753
|
bendPreset: W,
|
|
733
754
|
bendStrength: Y,
|
|
734
|
-
shadowLayers:
|
|
735
|
-
strokeLayers:
|
|
755
|
+
shadowLayers: q,
|
|
756
|
+
strokeLayers: _,
|
|
736
757
|
underline: G,
|
|
737
|
-
strikethrough:
|
|
738
|
-
}), h &&
|
|
758
|
+
strikethrough: $
|
|
759
|
+
}), h && Je(T, {
|
|
739
760
|
width: e,
|
|
740
761
|
height: n,
|
|
741
762
|
font: T.font,
|
|
742
|
-
lines:
|
|
743
|
-
textX:
|
|
744
|
-
startY:
|
|
745
|
-
lineHeight:
|
|
746
|
-
letterSpacingPx:
|
|
763
|
+
lines: w.resolvedLines,
|
|
764
|
+
textX: w.textX,
|
|
765
|
+
startY: w.startY,
|
|
766
|
+
lineHeight: w.lineHeight,
|
|
767
|
+
letterSpacingPx: w.letterSpacingPx,
|
|
747
768
|
bendPreset: W,
|
|
748
769
|
bendStrength: Y,
|
|
749
770
|
textAlign: b,
|
|
@@ -752,9 +773,9 @@ function Ne(t) {
|
|
|
752
773
|
blur: h.blur,
|
|
753
774
|
offsetX: h.offsetX ?? 0,
|
|
754
775
|
offsetY: h.offsetY ?? 0
|
|
755
|
-
}),
|
|
776
|
+
}), k = new We.CanvasTexture(p), k.needsUpdate = !0, k;
|
|
756
777
|
}
|
|
757
|
-
function
|
|
778
|
+
function Qe(t, e) {
|
|
758
779
|
const {
|
|
759
780
|
lines: n,
|
|
760
781
|
color: i,
|
|
@@ -766,50 +787,50 @@ function Ue(t, e) {
|
|
|
766
787
|
shadowLayers: h,
|
|
767
788
|
shadowEnabled: o,
|
|
768
789
|
innerShadow: d,
|
|
769
|
-
glow:
|
|
790
|
+
glow: c,
|
|
770
791
|
shadowColor: u,
|
|
771
792
|
shadowBlur: S,
|
|
772
|
-
shadowOffsetX:
|
|
793
|
+
shadowOffsetX: g,
|
|
773
794
|
shadowOffsetY: b,
|
|
774
795
|
shadowOpacity: m,
|
|
775
|
-
fontWeight:
|
|
776
|
-
fontStyle:
|
|
796
|
+
fontWeight: y,
|
|
797
|
+
fontStyle: v,
|
|
777
798
|
fontFamily: C,
|
|
778
799
|
fontSize: F,
|
|
779
|
-
textAlign:
|
|
800
|
+
textAlign: x,
|
|
780
801
|
verticalAlign: L,
|
|
781
|
-
overflow:
|
|
782
|
-
resizeToFit:
|
|
783
|
-
minFontSize:
|
|
784
|
-
letterSpacing:
|
|
802
|
+
overflow: O,
|
|
803
|
+
resizeToFit: E,
|
|
804
|
+
minFontSize: R,
|
|
805
|
+
letterSpacing: D,
|
|
785
806
|
lineSpacing: G,
|
|
786
|
-
bgFillMode:
|
|
807
|
+
bgFillMode: $,
|
|
787
808
|
bgOpacity: W,
|
|
788
809
|
bgFit: Y,
|
|
789
|
-
bgAutoSize:
|
|
790
|
-
bgWidth:
|
|
791
|
-
bgHeight:
|
|
792
|
-
bgGradientStops:
|
|
793
|
-
bgTextureFit:
|
|
794
|
-
bgTextureFlipX:
|
|
810
|
+
bgAutoSize: X,
|
|
811
|
+
bgWidth: A,
|
|
812
|
+
bgHeight: _,
|
|
813
|
+
bgGradientStops: q,
|
|
814
|
+
bgTextureFit: k,
|
|
815
|
+
bgTextureFlipX: p,
|
|
795
816
|
bgTextureFlipY: T,
|
|
796
|
-
borderColor:
|
|
797
|
-
borderWidth:
|
|
798
|
-
borderRadius:
|
|
799
|
-
padding:
|
|
817
|
+
borderColor: w,
|
|
818
|
+
borderWidth: M,
|
|
819
|
+
borderRadius: V,
|
|
820
|
+
padding: N,
|
|
800
821
|
aspect: ee,
|
|
801
|
-
resolution:
|
|
822
|
+
resolution: j,
|
|
802
823
|
underline: te,
|
|
803
824
|
strikethrough: ne,
|
|
804
825
|
bendPreset: re,
|
|
805
826
|
bendStrength: ie
|
|
806
|
-
} = t, ae =
|
|
827
|
+
} = t, ae = B(
|
|
807
828
|
() => r === !1 ? [] : a,
|
|
808
829
|
[r, a]
|
|
809
|
-
), le =
|
|
830
|
+
), le = B(
|
|
810
831
|
() => o === !1 ? [] : h,
|
|
811
832
|
[o, h]
|
|
812
|
-
), oe = void 0, se =
|
|
833
|
+
), oe = void 0, se = B(
|
|
813
834
|
() => ({
|
|
814
835
|
text: e.text,
|
|
815
836
|
lines: n,
|
|
@@ -820,41 +841,41 @@ function Ue(t, e) {
|
|
|
820
841
|
strokeOpacity: s,
|
|
821
842
|
shadowLayers: le,
|
|
822
843
|
innerShadow: d,
|
|
823
|
-
glow:
|
|
844
|
+
glow: c,
|
|
824
845
|
shadowColor: o === !1 ? void 0 : u,
|
|
825
846
|
shadowBlur: o === !1 ? 0 : S,
|
|
826
|
-
shadowOffsetX: o === !1 ? 0 :
|
|
847
|
+
shadowOffsetX: o === !1 ? 0 : g,
|
|
827
848
|
shadowOffsetY: o === !1 ? 0 : b,
|
|
828
849
|
shadowOpacity: m,
|
|
829
|
-
fontWeight:
|
|
830
|
-
fontStyle:
|
|
850
|
+
fontWeight: y,
|
|
851
|
+
fontStyle: v,
|
|
831
852
|
fontFamily: C,
|
|
832
853
|
fontSize: F,
|
|
833
|
-
textAlign:
|
|
854
|
+
textAlign: x,
|
|
834
855
|
verticalAlign: L,
|
|
835
|
-
overflow:
|
|
836
|
-
resizeToFit:
|
|
837
|
-
minFontSize:
|
|
838
|
-
letterSpacing:
|
|
856
|
+
overflow: O,
|
|
857
|
+
resizeToFit: E,
|
|
858
|
+
minFontSize: R,
|
|
859
|
+
letterSpacing: D,
|
|
839
860
|
lineSpacing: G,
|
|
840
861
|
bgColor: e.bgColor,
|
|
841
|
-
bgFillMode:
|
|
862
|
+
bgFillMode: $,
|
|
842
863
|
bgOpacity: W,
|
|
843
864
|
bgFit: Y,
|
|
844
|
-
bgAutoSize:
|
|
845
|
-
bgWidth:
|
|
846
|
-
bgHeight:
|
|
847
|
-
bgGradientStops:
|
|
865
|
+
bgAutoSize: X,
|
|
866
|
+
bgWidth: A,
|
|
867
|
+
bgHeight: _,
|
|
868
|
+
bgGradientStops: q,
|
|
848
869
|
bgTextureImage: oe,
|
|
849
|
-
bgTextureFit:
|
|
850
|
-
bgTextureFlipX:
|
|
870
|
+
bgTextureFit: k,
|
|
871
|
+
bgTextureFlipX: p,
|
|
851
872
|
bgTextureFlipY: T,
|
|
852
|
-
borderColor:
|
|
853
|
-
borderWidth:
|
|
854
|
-
borderRadius:
|
|
855
|
-
padding:
|
|
856
|
-
height:
|
|
857
|
-
width: Math.round(
|
|
873
|
+
borderColor: w,
|
|
874
|
+
borderWidth: M,
|
|
875
|
+
borderRadius: V,
|
|
876
|
+
padding: N,
|
|
877
|
+
height: j,
|
|
878
|
+
width: Math.round(j * Math.max(ee, 0.1)),
|
|
858
879
|
underline: te,
|
|
859
880
|
strikethrough: ne,
|
|
860
881
|
bendPreset: re,
|
|
@@ -872,90 +893,92 @@ function Ue(t, e) {
|
|
|
872
893
|
s,
|
|
873
894
|
le,
|
|
874
895
|
d,
|
|
875
|
-
|
|
896
|
+
c,
|
|
876
897
|
o,
|
|
877
898
|
u,
|
|
878
899
|
S,
|
|
879
|
-
|
|
900
|
+
g,
|
|
880
901
|
b,
|
|
881
902
|
m,
|
|
882
|
-
|
|
883
|
-
|
|
903
|
+
y,
|
|
904
|
+
v,
|
|
884
905
|
C,
|
|
885
906
|
F,
|
|
886
|
-
|
|
907
|
+
x,
|
|
887
908
|
L,
|
|
888
|
-
|
|
889
|
-
R,
|
|
909
|
+
O,
|
|
890
910
|
E,
|
|
891
|
-
|
|
892
|
-
G,
|
|
911
|
+
R,
|
|
893
912
|
D,
|
|
913
|
+
G,
|
|
914
|
+
$,
|
|
894
915
|
W,
|
|
895
916
|
Y,
|
|
896
|
-
H,
|
|
897
917
|
X,
|
|
918
|
+
A,
|
|
919
|
+
_,
|
|
898
920
|
q,
|
|
899
|
-
N,
|
|
900
921
|
oe,
|
|
901
|
-
|
|
902
|
-
|
|
922
|
+
k,
|
|
923
|
+
p,
|
|
903
924
|
T,
|
|
904
|
-
|
|
905
|
-
|
|
906
|
-
|
|
907
|
-
|
|
925
|
+
w,
|
|
926
|
+
M,
|
|
927
|
+
V,
|
|
928
|
+
N,
|
|
908
929
|
ee,
|
|
909
|
-
|
|
930
|
+
j,
|
|
910
931
|
te,
|
|
911
932
|
ne,
|
|
912
933
|
re,
|
|
913
934
|
ie
|
|
914
935
|
]
|
|
915
|
-
), fe =
|
|
916
|
-
return
|
|
917
|
-
}
|
|
918
|
-
|
|
919
|
-
|
|
920
|
-
|
|
921
|
-
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
925
|
-
|
|
926
|
-
|
|
927
|
-
|
|
928
|
-
|
|
929
|
-
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
|
|
933
|
-
|
|
934
|
-
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
|
|
939
|
-
|
|
936
|
+
), fe = B(() => Ke(se), [se]);
|
|
937
|
+
return Ae(fe), fe;
|
|
938
|
+
}
|
|
939
|
+
const Ze = ["color"];
|
|
940
|
+
function at(t) {
|
|
941
|
+
const e = He(t, Ze), n = { ...Xe, ...e }, {
|
|
942
|
+
text: i,
|
|
943
|
+
bgColor: a,
|
|
944
|
+
opacity: r,
|
|
945
|
+
name: l,
|
|
946
|
+
overlay: f = !0,
|
|
947
|
+
position: s,
|
|
948
|
+
rotation: h,
|
|
949
|
+
scale: o,
|
|
950
|
+
visible: d,
|
|
951
|
+
renderOrder: c
|
|
952
|
+
} = n, [u, S] = he(null), [g, b] = he(null), m = U(i);
|
|
953
|
+
m.current !== i && (m.current = i, u !== null && S(null));
|
|
954
|
+
const y = U(a);
|
|
955
|
+
y.current !== a && (y.current = a, g !== null && b(null));
|
|
956
|
+
const v = U(null), x = Qe(n, { text: u ?? i, bgColor: g ?? a });
|
|
957
|
+
return me(() => {
|
|
958
|
+
const L = v.current;
|
|
959
|
+
if (L)
|
|
960
|
+
return L.userData.setText = (O) => S(O), L.userData.setBgColor = (O) => b(O), () => {
|
|
961
|
+
delete L.userData.setText, delete L.userData.setBgColor;
|
|
940
962
|
};
|
|
941
|
-
}, []), /* @__PURE__ */
|
|
942
|
-
|
|
963
|
+
}, []), /* @__PURE__ */ z(
|
|
964
|
+
Se,
|
|
943
965
|
{
|
|
944
|
-
ref:
|
|
945
|
-
name:
|
|
946
|
-
texture:
|
|
947
|
-
overlay:
|
|
948
|
-
opacity:
|
|
949
|
-
position:
|
|
950
|
-
rotation:
|
|
951
|
-
scale:
|
|
952
|
-
visible:
|
|
953
|
-
renderOrder:
|
|
966
|
+
ref: v,
|
|
967
|
+
name: l,
|
|
968
|
+
texture: x,
|
|
969
|
+
overlay: f,
|
|
970
|
+
opacity: r,
|
|
971
|
+
position: s,
|
|
972
|
+
rotation: h,
|
|
973
|
+
scale: o,
|
|
974
|
+
visible: d,
|
|
975
|
+
renderOrder: c
|
|
954
976
|
}
|
|
955
977
|
);
|
|
956
978
|
}
|
|
957
979
|
export {
|
|
958
|
-
|
|
959
|
-
|
|
960
|
-
|
|
980
|
+
it as S,
|
|
981
|
+
at as T,
|
|
982
|
+
He as a,
|
|
983
|
+
Ae as u
|
|
961
984
|
};
|