xvai-loi 0.1.39 → 0.1.41

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.
Files changed (3) hide show
  1. package/co.txt +1 -1
  2. package/package.json +1 -1
  3. package/xvai-loi.js +25 -9
package/co.txt CHANGED
@@ -1 +1 @@
1
- xvaiLoi100138
1
+ xvaiLoi100208
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xvai-loi",
3
- "version": "0.1.39",
3
+ "version": "0.1.41",
4
4
  "description": "Loi dung video (Edit Video Tu Dong) nap vao tool Google Flow qua o cam engine/oCam.ts",
5
5
  "license": "UNLICENSED",
6
6
  "type": "module",
package/xvai-loi.js CHANGED
@@ -9970,6 +9970,7 @@ dangKy("cmNen", (g, d, tuoi, W4, H2, nen2, _s, dai2) => {
9970
9970
  if (d.bo === "depth") {
9971
9971
  const yG = d.yChu ?? 0.24, truoc = d.yChu != null && F && yG > F[1] - 0.06 && yG < F[3];
9972
9972
  const veChu = () => chu2(g, d.giant, W4 / 2, yG * H2 + (d.z ? 0 : (1 - ka) * 70 * H2 / 1920), 190 * (d.coChu || 1) * H2 / 1920, "giant", d.z ? 1 : kep12(tuoi / 0.2), 0.84 * W4);
9973
+ if (!truoc) veChu();
9973
9974
  if (p) {
9974
9975
  if (zk > 1.001) phongK(g, p, W4, H2, F, zk);
9975
9976
  else g.drawImage(p, 0, 0, W4, H2);
@@ -10647,6 +10648,13 @@ function lapCuongMe(o) {
10647
10648
  const sp = [];
10648
10649
  let ctxSt = "";
10649
10650
  const IC = { tien: "xu", dongho: "dongho", canhbao: "canh", tich: "tich", bieudo: "bieu", tim: "tim", khong: "none" };
10651
+ const boTrang = () => {
10652
+ try {
10653
+ return localStorage.getItem("xvaiToanKhung") === "1" ? "anh" : "chia";
10654
+ } catch (e) {
10655
+ return "chia";
10656
+ }
10657
+ };
10650
10658
  const kTram = () => {
10651
10659
  try {
10652
10660
  const v = +(localStorage.getItem("xvaiTramDai") || 1);
@@ -11378,7 +11386,7 @@ function lapCuongMe(o) {
11378
11386
  for (const dd of [2.2 * kTram(), 1.8]) for (let f2 = f0; f2 <= m.b - dd - 0.5 + 1e-6; f2 += 0.25) {
11379
11387
  const fr = +f2.toFixed(2);
11380
11388
  if (gioLogo(fr - 0.1, fr + dd) >= 0 || lien(fr, fr + dd) > 6) continue;
11381
- if (dat(fr, dd, { uuTien: UT.anh, bo: "chia", ten: tk, keu: "whoosh-nhanh" }, 0, 0.01)) {
11389
+ if (dat(fr, dd, { uuTien: UT.anh, bo: boTrang(), ten: tk, chu: boTrang() === "anh" ? hoa3(String(m.ten)).slice(0, 24) : void 0, keu: "whoosh-nhanh" }, 0, 0.01)) {
11382
11390
  ghiL("them", { bo: "chia", f: fr, d: dd }, "chia trang " + m.ten + (fr > f0 + 0.01 ? " (doi " + (fr - f0).toFixed(2) + " s sau the)" : " ngay sau the"));
11383
11391
  return;
11384
11392
  }
@@ -11548,7 +11556,7 @@ function lapCuongMe(o) {
11548
11556
  continue;
11549
11557
  }
11550
11558
  for (const t of ["giant", "chu", "chu2", "st", "ten", "tieu"]) if (typeof e[t] === "string") {
11551
- s[t] = e[t];
11559
+ s[t] = e[t].split("\n").join(String.fromCharCode(10));
11552
11560
  s.khoa = 1;
11553
11561
  nS++;
11554
11562
  }
@@ -11574,7 +11582,7 @@ function lapCuongMe(o) {
11574
11582
  }
11575
11583
  if (Array.isArray(sua.them)) for (const t of sua.them) {
11576
11584
  if (!t || typeof t.f !== "number" || !(t.d > 0.3)) continue;
11577
- sp.push({ id: idC({ f: +t.f, bo: ["depth", "anh", "cut", "tron"].includes(t.bo) ? t.bo : "depth" }), f: +t.f, d: +t.d, bo: ["depth", "anh", "cut", "tron"].includes(t.bo) ? t.bo : "depth", giant: String(t.giant || ""), chu: String(t.chu || ""), chu2: String(t.chu2 || ""), ten: String(t.ten || ""), st: String(t.st || ""), khoa: 1, dSua: 1, moi: 1, keu: 1 });
11585
+ sp.push({ id: idC({ f: +t.f, bo: ["depth", "anh", "cut", "tron"].includes(t.bo) ? t.bo : "depth" }), f: +t.f, d: +t.d, bo: ["depth", "anh", "cut", "tron"].includes(t.bo) ? t.bo : "depth", giant: String(t.giant || "").split("\n").join(String.fromCharCode(10)), chu: String(t.chu || ""), chu2: String(t.chu2 || ""), ten: String(t.ten || ""), st: String(t.st || ""), khoa: 1, dSua: 1, moi: 1, keu: 1 });
11578
11586
  nS++;
11579
11587
  }
11580
11588
  const sp2 = sp.filter((s) => !s.xoa);
@@ -11674,10 +11682,10 @@ function lapCuongMe(o) {
11674
11682
  the(a, bT, {
11675
11683
  loai: "cmSticker",
11676
11684
  st,
11677
- x: s.stX ?? (s.bo === "kinh" ? 0.87 : s.bo === "tron" ? 0.86 : stTr.n++ % 2 ? 0.16 : 0.84),
11685
+ x: s.stX ?? (s.bo === "kinh" ? 0.87 : s.bo === "tron" ? 0.86 : s.bo === "anh" ? 0.85 : stTr.n++ % 2 ? 0.16 : 0.84),
11678
11686
  // trái / phải xen kẽ (mổ v38: sticker luôn 1 chỗ)
11679
11687
  /* 09/10 20:0x RÀ SOÁT cm25 (Tú: "chữ và icon đè nhau"): ✓ đè dòng 1 thẻ kính (22,5 s "✓IỐI NHẠC NỀN", 30 s, 45 s) → kính: ghim góc trên-phải thẻ (y 0,255, trên dòng 1 ≥ 0,31 H); 🕐 đè dòng 2 (60,5 s "🕐ỚT ĐIỆN THOẠI") → chữ 2 dòng: đặt DƯỚI khối chữ, không cạnh. */
11680
- y: s.stY ?? (s.bo === "kinh" ? 0.255 : s.bo === "tron" ? 0.52 : s.bo === "anh" ? 0.6 : s.bo === "depth" ? (s.yChu ?? 0.24) + (s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.27 : 0.15) : s.bo === "toi" ? s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.64 : 0.52 : s.hang ? 0.47 : s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.6 : 0.33),
11688
+ y: s.stY ?? (s.bo === "kinh" ? 0.255 : s.bo === "tron" ? 0.52 : s.bo === "anh" ? 0.13 : s.bo === "depth" ? (s.yChu ?? 0.24) + (s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.27 : 0.15) : s.bo === "toi" ? s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.64 : 0.52 : s.hang ? 0.47 : s.chu2 || String(s.giant || "").indexOf(String.fromCharCode(10)) >= 0 ? 0.6 : 0.33),
11681
11689
  tre: s.stTre ?? (s.bo === "anh" ? 0.5 : 0.3),
11682
11690
  r: s.stR ?? (s.bo === "kinh" ? 0.07 : 0.08)
11683
11691
  });
@@ -11843,7 +11851,15 @@ var mau6 = (HO2) => {
11843
11851
  } catch (e) {
11844
11852
  return "vui";
11845
11853
  }
11846
- })(), 0.2],
11854
+ })(), (() => {
11855
+ try {
11856
+ const m = +(localStorage.getItem("xvaiNhacMuc") || 0.2);
11857
+ return m >= 0.05 && m <= 0.6 ? m : 0.2;
11858
+ } catch (e) {
11859
+ return 0.2;
11860
+ }
11861
+ })()],
11862
+ /* K2b: xvaiNhacMuc mức nhạc nền 0,05–0,6 (ADN bass 0,05–0,35; đo 0,003 vì nhạc 0,2 chìm) — mặc định giữ 0,2 */
11847
11863
  /* 10/10 K2: tuỳ chọn xvaiNhac (mặc định giữ 'vui' 112 BPM; đối thủ ~81 BPM → thử 'nhe' 84 / 'sangtrong' 88) */
11848
11864
  nang: [],
11849
11865
  nhe: [],
@@ -19084,7 +19100,7 @@ async function napLoi(d) {
19084
19100
  return "LOI: " + String(e && e.message || e).slice(0, 300);
19085
19101
  }
19086
19102
  }
19087
- var LOI_URL = "https://cdn.jsdelivr.net/npm/xvai-loi@0.1.38/nap.js";
19103
+ var LOI_URL = "https://cdn.jsdelivr.net/npm/xvai-loi@0.1.40/nap.js";
19088
19104
  var TRONG_LOI = !!globalThis.__xvaiReact;
19089
19105
  try {
19090
19106
  if (!TRONG_LOI) setTimeout(() => {
@@ -19114,7 +19130,7 @@ function datCauLenh(a) {
19114
19130
  on2 = true;
19115
19131
  window.addEventListener("message", async (ev) => {
19116
19132
  const d = ev.data;
19117
- if (!d || d.xvaiLoi100138 !== true) return;
19133
+ if (!d || d.xvaiLoi100208 !== true) return;
19118
19134
  const o = String(ev.origin || "");
19119
19135
  if (!(o.indexOf("https://flow.google.com") === 0 || o.indexOf("https://labs.google") === 0)) return;
19120
19136
  const tra = (kq) => {
@@ -19412,7 +19428,7 @@ var SuaLich = ({ ten, onDong }) => {
19412
19428
  };
19413
19429
 
19414
19430
  // loi/vo-flow.tsx
19415
- var PHIEN_BAN = "loi-1010N";
19431
+ var PHIEN_BAN = "loi-1010Q";
19416
19432
  var TRONG = () => migrateProject({ id: crypto.randomUUID(), name: "D\u1EF1 \xE1n m\u1EDBi", scenes: [], timeline: [], images: [null, null, null] });
19417
19433
  var nut4 = "px-3 py-1.5 rounded-lg border border-[#2C4A73] text-[11px] font-bold text-[#A2B2C9] hover:text-[#F6D178] hover:border-[#F6D178]/60";
19418
19434
  var Vo = () => {