xvai-loi 0.1.147 → 0.1.148
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/co.txt +1 -1
- package/package.json +1 -1
- package/xvai-loi.js +45 -11
package/co.txt
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
xvaiLoi141057
|
package/package.json
CHANGED
package/xvai-loi.js
CHANGED
|
@@ -1806,12 +1806,13 @@ var TO_MAU = {
|
|
|
1806
1806
|
// trọng số hàm điểm (chỉnh 1 lần trên 14 video bài tập, không chỉnh theo từng video)
|
|
1807
1807
|
};
|
|
1808
1808
|
var LOP = (x) => x.bo === "card" ? "THE_TREN" : x.bo === "chia" || x.bo === "tron" ? "CHIA_DOI" : x.bo === "phong" ? "NGUOI_ZOOM" : x.bo === "kinh" || x.bo === "sodo" ? "DO_HOA" : x.bo === "anh" ? x.ten && /^(anh|trang|vat):/.test(String(x.ten)) || x.video ? "TRAM" : "DO_HOA" : "NGUOI_TACH";
|
|
1809
|
+
var TM = TO_MAU;
|
|
1809
1810
|
var pDH = (a, b) => {
|
|
1810
|
-
const h =
|
|
1811
|
+
const h = TM.demDH[a] || {}, n = Object.values(h).reduce((x, y) => x + y, 0);
|
|
1811
1812
|
return ((h[b] || 0) + 0.3) / (n + 1.5);
|
|
1812
1813
|
};
|
|
1813
1814
|
var pChuyen = (a, b) => {
|
|
1814
|
-
const h =
|
|
1815
|
+
const h = TM.dem[a] || {}, n = Object.values(h).reduce((x, y) => x + y, 0);
|
|
1815
1816
|
return ((h[b] || 0) + 0.5) / (n + 3.5);
|
|
1816
1817
|
};
|
|
1817
1818
|
var bd = (x) => x.toLocaleLowerCase("vi").normalize("NFD").replace(/[̀-ͯ]/g, "").replace(/đ/g, "d");
|
|
@@ -1829,6 +1830,7 @@ var haiDong = (t) => {
|
|
|
1829
1830
|
return w.slice(0, k).join(" ") + String.fromCharCode(10) + w.slice(k).join(" ");
|
|
1830
1831
|
};
|
|
1831
1832
|
function cachTrinhBay(x, f2, d, nc) {
|
|
1833
|
+
if (TM.theMuc === "depth" && x.bo === "card" && x.tieu) return [{ ...x, bo: "depth", giant: haiDong(String(x.tieu)) }];
|
|
1832
1834
|
const r = x.bo === "kinh" && Array.isArray(x.dong) && x.dong.length === 1 && String(x.dong[0]).trim().split(/\s+/).length < 3 ? [] : [x], dong = Array.isArray(x.dong) ? x.dong.filter(Boolean) : [];
|
|
1833
1835
|
const chu1 = x.bo === "kinh" && dong.length === 1 ? String(dong[0]) : (x.bo === "depth" || x.bo === "cut") && x.giant && !x.vat && !x.logoTo && !x.cam && (x.uuTien || 0) < 90 ? String(x.giant).split(String.fromCharCode(10)).join(" ") : "";
|
|
1834
1836
|
if (chu1) {
|
|
@@ -1848,7 +1850,9 @@ function gioNoi(x, f0, nc) {
|
|
|
1848
1850
|
return -1;
|
|
1849
1851
|
}
|
|
1850
1852
|
function giaiBoCuc(ung, tong, nc = {}) {
|
|
1851
|
-
const
|
|
1853
|
+
const o = nc.toMau;
|
|
1854
|
+
TM = o ? { ...TO_MAU, ...o, lop: { ...TO_MAU.lop, ...o.lop || {} }, zoom: { ...TO_MAU.zoom, ...o.zoom || {} }, diem: { ...TO_MAU.diem, ...o.diem || {} } } : TO_MAU;
|
|
1855
|
+
const T = TM, pa = [];
|
|
1852
1856
|
globalThis.__giaiUng = ung.map((c) => [+c[0].toFixed(2), +c[1].toFixed(2), c[2].bo, c[2].giant || "", c[2].chu || "", (c[2].dong || []).join("|"), c[2].ten || "", c[2].uuTien, c[4]]);
|
|
1853
1857
|
ung.forEach((c, i) => {
|
|
1854
1858
|
const [f0, d0, x0, doi] = c, batBuoc = (x0.uuTien || 0) >= 90, W3 = T.diem;
|
|
@@ -6021,7 +6025,7 @@ function lapCuongMe(o) {
|
|
|
6021
6025
|
});
|
|
6022
6026
|
if (GIAI) {
|
|
6023
6027
|
bc = "B4b giai";
|
|
6024
|
-
const r = giaiBoCuc(ung, tong, { W2: W22, matOn: (a, b) => tyLeMat(a, b) >= 0.7 && yenMat(a, b) });
|
|
6028
|
+
const r = giaiBoCuc(ung, tong, { W2: W22, matOn: (a, b) => tyLeMat(a, b) >= 0.7 && yenMat(a, b), toMau: o.kieu.toMau });
|
|
6025
6029
|
sp.push(...r.sp);
|
|
6026
6030
|
sp.forEach((s) => {
|
|
6027
6031
|
if (s.m) giu.add(s.m);
|
|
@@ -7495,8 +7499,35 @@ var mau = (HO2) => {
|
|
|
7495
7499
|
}];
|
|
7496
7500
|
};
|
|
7497
7501
|
|
|
7502
|
+
// flow-src/engine/mauMucDich.ts
|
|
7503
|
+
var SACH = { id: "giong-sach", ten: "Ph\u1EE5 \u0111\u1EC1 s\u1EA1ch", nhacSan: 1, sach: 1, doan: void 0 };
|
|
7504
|
+
var CHUYEN_GIA = { id: "giong-chuyen-gia", ten: "Chuy\xEAn gia chia s\u1EBB", to: {
|
|
7505
|
+
lop: { NGUOI_TACH: { d: 4, mat: 1 }, THE_TREN: { d: 3, mat: 1 }, CHIA_DOI: { d: 4, mat: 1 }, TRAM: { d: 2.5, mat: 0 }, DO_HOA: { d: 3, mat: 0 } },
|
|
7506
|
+
// NGUOI_TACH = chữ sau đầu (người to nguyên khung) là chính; THE_TREN/CHIA_DOI thu nhỏ người → hiếm; TRAM/DO_HOA mất mặt → hiếm.
|
|
7507
|
+
dem: {
|
|
7508
|
+
NGUOI: { NGUOI_TACH: 12, NGUOI_ZOOM: 6, THE_TREN: 2, CHIA_DOI: 2, TRAM: 2, DO_HOA: 1 },
|
|
7509
|
+
NGUOI_TACH: { NGUOI: 10, NGUOI_ZOOM: 2, THE_TREN: 1, CHIA_DOI: 1, TRAM: 1, DO_HOA: 1 },
|
|
7510
|
+
NGUOI_ZOOM: { NGUOI: 6, NGUOI_TACH: 4, THE_TREN: 1 },
|
|
7511
|
+
THE_TREN: { NGUOI: 8, NGUOI_TACH: 3, NGUOI_ZOOM: 2 },
|
|
7512
|
+
CHIA_DOI: { NGUOI: 8, NGUOI_TACH: 3, NGUOI_ZOOM: 1 },
|
|
7513
|
+
TRAM: { NGUOI: 8, NGUOI_TACH: 3, NGUOI_ZOOM: 1 },
|
|
7514
|
+
DO_HOA: { NGUOI: 8, NGUOI_TACH: 3, NGUOI_ZOOM: 1 }
|
|
7515
|
+
},
|
|
7516
|
+
demDH: {
|
|
7517
|
+
NGUOI_TACH: { NGUOI_TACH: 3, THE_TREN: 1, CHIA_DOI: 1, TRAM: 1, DO_HOA: 1 },
|
|
7518
|
+
THE_TREN: { NGUOI_TACH: 4, TRAM: 1 },
|
|
7519
|
+
CHIA_DOI: { NGUOI_TACH: 4, TRAM: 1 },
|
|
7520
|
+
TRAM: { NGUOI_TACH: 4, THE_TREN: 1 },
|
|
7521
|
+
DO_HOA: { NGUOI_TACH: 4, THE_TREN: 1 }
|
|
7522
|
+
},
|
|
7523
|
+
theMuc: "depth",
|
|
7524
|
+
nguoiNganS: 0.8,
|
|
7525
|
+
zoomMoiPhut: 3,
|
|
7526
|
+
diem: { cat: 8, phu: 3, chop: 20, coAnh: 0 }
|
|
7527
|
+
} };
|
|
7528
|
+
|
|
7498
7529
|
// flow-src/engine/mauThem.ts
|
|
7499
|
-
var mauThem = (HO2) => [khoiCuongMe_exports].flatMap((m) => m.mau(HO2)).flatMap((m) => m.id === "giong-cuongme" ? [m, { ...m, id: "giong-cuongme-goc", ten: "CUONGME g\u1ED1c (b\u1ED9 gi\u1EA3i, \u0111ang th\u1EED)", doan: { ...m.doan, giai: 1 } }] : [m]);
|
|
7530
|
+
var mauThem = (HO2) => [khoiCuongMe_exports].flatMap((m) => m.mau(HO2)).flatMap((m) => m.id === "giong-cuongme" ? [m, { ...m, id: "giong-cuongme-goc", ten: "CUONGME g\u1ED1c (b\u1ED9 gi\u1EA3i, \u0111ang th\u1EED)", doan: { ...m.doan, giai: 1 } }, { ...m, ...SACH, nhac: m.doan.nhac }, { ...m, id: CHUYEN_GIA.id, ten: CHUYEN_GIA.ten, doan: { ...m.doan, giai: 1, toMau: CHUYEN_GIA.to } }] : [m]);
|
|
7500
7531
|
|
|
7501
7532
|
// flow-src/engine/mauPhuDe.ts
|
|
7502
7533
|
var P2 = { ...mauPrism_default, mau: [...new Map(mauPrism_default.mau.concat(mauHo_default, mauKhoi(mauHo_default), mauThem(mauHo_default)).map((m) => [m.id, m])).values()] };
|
|
@@ -8531,8 +8562,11 @@ var MAU_STUDIO = [
|
|
|
8531
8562
|
{ id: "giong-paper-ii", thu: 1, ten: "Gi\u1EA5y X\xE9", mo: "Gi\u1EA5y x\xE9, b\u0103ng keo, h\u1ED9p tr\u1EAFng" },
|
|
8532
8563
|
{ id: "giong-sketch", thu: 1, ten: "B\u1EA3ng Ph\u1EA5n", mo: "Ti\xEAu \u0111\u1EC1 v\xF2ng b\xFAt ch\xEC, ch\u1EEF vi\u1EBFt tay" },
|
|
8533
8564
|
{ id: "giong-story", thu: 1, ten: "Story", mo: "Serif nghi\xEAng, t\u1EEB nh\u1EA5n v\xE0ng chanh" },
|
|
8534
|
-
{ id: "giong-cuongme", ten: "Top N chi\u1EC1u s\xE2u", mo: "Th\u1EBB bo g\xF3c + \u0111\u1EA7u nh\xF4, ch\u1EEF sau \u0111\u1EA7u, n\u1EC1n cam (CUONGME)" },
|
|
8565
|
+
{ id: "giong-cuongme", dat: 1, ten: "Top N chi\u1EC1u s\xE2u", mo: "Th\u1EBB bo g\xF3c + \u0111\u1EA7u nh\xF4, ch\u1EEF sau \u0111\u1EA7u, n\u1EC1n cam (CUONGME)", hop: "Ki\u1EBFn th\u1EE9c d\u1EA1ng danh s\xE1ch, chia s\u1EBB kinh nghi\u1EC7m" },
|
|
8535
8566
|
{ id: "giong-cuongme-goc", ten: "CUONGME g\u1ED1c", mo: "B\u1ED9 gi\u1EA3i theo t\u1EDD m\u1EABu C\u01B0\u1EDDng M\xEA AI (\u0111ang th\u1EED, L\xE1t 3a)", thu: 1 },
|
|
8567
|
+
{ id: "giong-sach", thu: 1, ten: "Ph\u1EE5 \u0111\u1EC1 s\u1EA1ch", mo: "Ch\u1EC9 ph\u1EE5 \u0111\u1EC1 + c\u1EAFt l\u1EB7ng + nh\u1EA1c nh\u1EB9 \xB7 nhanh, 0 \u1EA3nh", hop: "M\u1ECDi video: nhanh, an to\xE0n" },
|
|
8568
|
+
{ id: "giong-chuyen-gia", thu: 1, ten: "Chuy\xEAn gia chia s\u1EBB", mo: "Ng\u01B0\u1EDDi n\xF3i l\xE0 ch\xEDnh, \xEDt th\u1EBB, nh\u1ECBp ch\u1EADm", hop: "Coach, gi\xE1o vi\xEAn, chuy\xEAn gia" },
|
|
8569
|
+
// 14/10 phiếu 013: ẩn tới khi Tú Đạt
|
|
8536
8570
|
{ id: "giong-paper-ii-v2", thu: 1, ten: "Gi\u1EA5y X\xE9 v2", mo: "Gi\u1EA5y x\xE9 theo t\u1EEBng c\xE2u, v\u1EADt th\u1EADt" },
|
|
8537
8571
|
{ id: "giong-story-v2", thu: 1, ten: "Story v2", mo: "Ti\xEAu \u0111\u1EC1 nghi\xEAng, c\u1EAFt sang \u1EA3nh m\u1ED7i ~3 s" }
|
|
8538
8572
|
];
|
|
@@ -8620,7 +8654,7 @@ var KhoMauStudio = ({ chon, sua, nen: nen2, dung, onChon }) => {
|
|
|
8620
8654
|
}, [san, dung, nv, bo4]);
|
|
8621
8655
|
return /* @__PURE__ */ shim_react_default.createElement("div", { className: "space-y-2" }, /* @__PURE__ */ shim_react_default.createElement("div", { className: "grid grid-cols-2 md:grid-cols-4 gap-3" }, MAU_STUDIO.map((x, i) => x.thu && !thu2 && chon !== x.id ? null : /* @__PURE__ */ shim_react_default.createElement("button", { key: x.id || "goc", onClick: () => onChon(x.id), className: "group text-left rounded-xl overflow-hidden border transition-all " + (chon === x.id ? "border-[#F6D178] ring-2 ring-[#F6D178]/60 shadow-[0_0_24px_rgba(246,209,120,.25)]" : "border-[#2C4A73] hover:border-[#F6D178]/60") }, /* @__PURE__ */ shim_react_default.createElement("canvas", { ref: (el) => {
|
|
8622
8656
|
cvs.current[i] = el;
|
|
8623
|
-
}, width: W, height: H, className: "w-full aspect-[9/16] block bg-[#0B1A2C]" }), /* @__PURE__ */ shim_react_default.createElement("div", { className: "px-3 py-2 bg-[#142A47]" }, /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[12px] font-black text-[#F4F1E8]" }, x.ten), /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[10px] text-[#A2B2C9]" }, x.mo))))), /* @__PURE__ */ shim_react_default.createElement("button", { onClick: () => setThu((v) => !v), className: "text-[11px] text-[#A2B2C9] underline" }, thu2 ? "\u1EA8n m\u1EABu \u0111ang th\u1EED" : "Hi\u1EC7n c\u1EA3 m\u1EABu \u0111ang th\u1EED (" + MAU_STUDIO.filter((x) => x.thu).length + ", ch\u01B0a \u0111\u1EA1t chu\u1EA9n)"));
|
|
8657
|
+
}, width: W, height: H, className: "w-full aspect-[9/16] block bg-[#0B1A2C]" }), /* @__PURE__ */ shim_react_default.createElement("div", { className: "px-3 py-2 bg-[#142A47]" }, /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[12px] font-black text-[#F4F1E8]" }, x.dat ? /* @__PURE__ */ shim_react_default.createElement("span", { className: "mr-1 text-emerald-300" }, "\u2713") : null, x.ten), /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[10px] text-[#A2B2C9]" }, x.mo), x.hop && /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[10px] text-[#F6D178]/90 mt-0.5" }, "H\u1EE3p: ", x.hop))))), /* @__PURE__ */ shim_react_default.createElement("button", { onClick: () => setThu((v) => !v), className: "text-[11px] text-[#A2B2C9] underline" }, thu2 ? "\u1EA8n m\u1EABu \u0111ang th\u1EED" : "Hi\u1EC7n c\u1EA3 m\u1EABu \u0111ang th\u1EED (" + MAU_STUDIO.filter((x) => x.thu).length + ", ch\u01B0a \u0111\u1EA1t chu\u1EA9n)"));
|
|
8624
8658
|
};
|
|
8625
8659
|
|
|
8626
8660
|
// flow-src/components/KeHoachStudio.tsx
|
|
@@ -11450,7 +11484,7 @@ var StudioEdit = ({ project, setProject, exporting, blob, onExport, onDownload,
|
|
|
11450
11484
|
const [fx, setFx] = useState({ rung: true, dep: true, tieng: true, rang: true, cat: true, nhac: false, anh: false });
|
|
11451
11485
|
useEffect(() => {
|
|
11452
11486
|
const m = mau2 && layMau(mau2);
|
|
11453
|
-
if (m?.doan?.khoi && m.doan.nhac) setFx((f2) => ({ ...f2, nhac: true }));
|
|
11487
|
+
if (m?.doan?.khoi && m.doan.nhac || m?.nhacSan) setFx((f2) => ({ ...f2, nhac: true }));
|
|
11454
11488
|
}, [mau2]);
|
|
11455
11489
|
const [nen2, setNen] = useState(null), [pro, setPro] = useState(null), [loi2, setLoi] = useState(""), [doc4, setDoc] = useState(""), [giay, setGiay] = useState(0);
|
|
11456
11490
|
const t0 = useRef(0), vao = useRef(null), raXuat = useRef(onExport);
|
|
@@ -11521,7 +11555,7 @@ var StudioEdit = ({ project, setProject, exporting, blob, onExport, onDownload,
|
|
|
11521
11555
|
};
|
|
11522
11556
|
const datMau = () => {
|
|
11523
11557
|
W2.__mauPhuDe = mau2 ? sua ? mau2 + "-sua" : mau2 : "";
|
|
11524
|
-
W2.__theoMauKhoi = !!(mau2 && layMau(mau2)?.doan?.khoi);
|
|
11558
|
+
W2.__theoMauKhoi = !!(mau2 && (layMau(mau2)?.doan?.khoi || layMau(mau2)?.sach));
|
|
11525
11559
|
W2.__xuatNhanh = nhanh;
|
|
11526
11560
|
setProject((c) => c ? { ...c, studioFx: { ...c.studioFx || {}, stabilize: fx.rung ? 3 : 0, beauty: fx.dep ? 2 : 0, voice: fx.tieng ? 1 : 0, teeth: fx.rang ? 1 : 0 } } : c);
|
|
11527
11561
|
};
|
|
@@ -15703,7 +15737,7 @@ async function handleExport(currentProject, setExporting, setExportedBlob, addLo
|
|
|
15703
15737
|
}
|
|
15704
15738
|
currentProject = apDungDoan(currentProject, mauPd, kb);
|
|
15705
15739
|
}
|
|
15706
|
-
const nhM = mauPd && window.__xuatNhanh ? mauPd.doan?.nhac : null;
|
|
15740
|
+
const nhM = mauPd && window.__xuatNhanh ? mauPd.doan?.nhac || mauPd.nhac : null;
|
|
15707
15741
|
if (nhM && !currentProject.musicBed && currentProject.musicMode === void 0) {
|
|
15708
15742
|
setExporting({ percent: 1, step: "T\u1EA1o nh\u1EA1c n\u1EC1n c\u1EE7a m\u1EABu..." });
|
|
15709
15743
|
const L = currentProject.timeline.reduce((s, c) => s + c.trimEnd - c.trimStart, 0);
|
|
@@ -16071,7 +16105,7 @@ function datCauLenh(a) {
|
|
|
16071
16105
|
on2 = true;
|
|
16072
16106
|
window.addEventListener("message", async (ev) => {
|
|
16073
16107
|
const d = ev.data;
|
|
16074
|
-
if (!d || d.
|
|
16108
|
+
if (!d || d.xvaiLoi141057 !== true) return;
|
|
16075
16109
|
const o = String(ev.origin || "");
|
|
16076
16110
|
if (!(o.indexOf("https://flow.google.com") === 0 || o.indexOf("https://labs.google") === 0)) return;
|
|
16077
16111
|
const tra = (kq) => {
|