xvai-loi 0.1.96 → 0.1.98

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 +84 -3
package/co.txt CHANGED
@@ -1 +1 @@
1
- xvaiLoi121356
1
+ xvaiLoi121518
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xvai-loi",
3
- "version": "0.1.96",
3
+ "version": "0.1.98",
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
@@ -21083,7 +21083,7 @@ function datCauLenh(a) {
21083
21083
  on2 = true;
21084
21084
  window.addEventListener("message", async (ev) => {
21085
21085
  const d = ev.data;
21086
- if (!d || d.xvaiLoi121356 !== true) return;
21086
+ if (!d || d.xvaiLoi121518 !== true) return;
21087
21087
  const o = String(ev.origin || "");
21088
21088
  if (!(o.indexOf("https://flow.google.com") === 0 || o.indexOf("https://labs.google") === 0)) return;
21089
21089
  const tra = (kq) => {
@@ -21323,6 +21323,24 @@ async function ngheCat(t0, t1) {
21323
21323
  var nut3 = "px-2 py-1 rounded bg-[#1E3A5F] text-[11px] font-bold hover:bg-[#2C4A73]";
21324
21324
  var SuaLich = ({ ten, onDong }) => {
21325
21325
  const khoaDA = String(ten).replace(/(-x[0-9.]+)+$/, "");
21326
+ const [chonAnh, setChonAnh] = useState("");
21327
+ const thumb = (t) => {
21328
+ const G22 = globalThis;
21329
+ G22.__thumbAnh = G22.__thumbAnh || {};
21330
+ if (G22.__thumbAnh[t]) return G22.__thumbAnh[t];
21331
+ try {
21332
+ const im = taiSan(t);
21333
+ if (!im || !im.width) return "";
21334
+ const c = document.createElement("canvas");
21335
+ c.width = 72;
21336
+ c.height = 128;
21337
+ const k = Math.max(72 / im.width, 128 / im.height);
21338
+ c.getContext("2d").drawImage(im, (72 - im.width * k) / 2, (128 - im.height * k) / 2, im.width * k, im.height * k);
21339
+ return G22.__thumbAnh[t] = c.toDataURL("image/jpeg", 0.6);
21340
+ } catch (e) {
21341
+ return "";
21342
+ }
21343
+ };
21326
21344
  const G3 = globalThis;
21327
21345
  const luuCai = (k, v) => {
21328
21346
  try {
@@ -21614,6 +21632,66 @@ var SuaLich = ({ ten, onDong }) => {
21614
21632
  }
21615
21633
  })();
21616
21634
  }, []);
21635
+ useEffect(() => {
21636
+ (async () => {
21637
+ const lay = async (k) => {
21638
+ const v = await docDem("cai:" + khoaDA + ":" + k);
21639
+ return typeof v === "string" ? v : null;
21640
+ };
21641
+ try {
21642
+ const t = await lay("xvaiKieuChuTen"), v = await lay("xvaiKieuChu");
21643
+ if (t && v) {
21644
+ try {
21645
+ localStorage.setItem("xvaiKieuChuTen", t);
21646
+ localStorage.setItem("xvaiKieuChu", v);
21647
+ } catch (e) {
21648
+ }
21649
+ G3.__xvaiKieuChu = JSON.parse(v);
21650
+ setKc(t);
21651
+ }
21652
+ } catch (e) {
21653
+ }
21654
+ try {
21655
+ const v = await lay("xvaiAm");
21656
+ if (v) {
21657
+ const o = JSON.parse(v);
21658
+ G3.__xvaiAm = o;
21659
+ try {
21660
+ localStorage.setItem("xvaiAm", v);
21661
+ } catch (e) {
21662
+ }
21663
+ setAm({ loi: +o.loi || 1, nhac: +o.nhac || 1, on: o.on ?? "" });
21664
+ }
21665
+ } catch (e) {
21666
+ }
21667
+ try {
21668
+ const v = await lay("xvaiMau");
21669
+ if (v) {
21670
+ const o = JSON.parse(v);
21671
+ G3.__xvaiMau = o;
21672
+ try {
21673
+ localStorage.setItem("xvaiMau", v);
21674
+ } catch (e) {
21675
+ }
21676
+ setFx({ sang: +o.sang || 1, tuongPhan: +o.tuongPhan || 1, baoHoa: +o.baoHoa || 1, am: +o.am || 0, net: +o.net || 0 });
21677
+ }
21678
+ } catch (e) {
21679
+ }
21680
+ try {
21681
+ const v = await lay("xvaiCatTay");
21682
+ if (v) {
21683
+ const o = JSON.parse(v);
21684
+ G3.__catTay = o;
21685
+ try {
21686
+ localStorage.setItem("xvaiCatTay", v);
21687
+ } catch (e) {
21688
+ }
21689
+ setCatTay(o);
21690
+ }
21691
+ } catch (e) {
21692
+ }
21693
+ })();
21694
+ }, [khoaDA]);
21617
21695
  const datMuc = (k) => {
21618
21696
  setMuc(k);
21619
21697
  G3.__mucHieuUng = k;
@@ -21804,10 +21882,13 @@ var SuaLich = ({ ten, onDong }) => {
21804
21882
  const f2 = giaTri(x, "f"), d = giaTri(x, "d"), e = sua[x.id] || sua[x.i] || {};
21805
21883
  if (e.xoa) return null;
21806
21884
  return /* @__PURE__ */ shim_react_default.createElement("div", { key: "k" + (x.id || x.i), title: x.bo + " " + f2.toFixed(1) + "\u2013" + (f2 + d).toFixed(1) + " " + (x.giant || x.chu || ""), onPointerDown: (ev) => batDauKeo(ev, x, false), className: "absolute top-3 h-5 rounded-sm cursor-grab text-[8px] text-white overflow-hidden whitespace-nowrap px-0.5", style: { left: f2 / tongS * 100 + "%", width: Math.max(0.4, d / tongS * 100) + "%", background: MAUBO[x.bo] || "#777", outline: e.f != null || e.d != null ? "1px solid #fff" : "none" } }, String(x.giant || x.chu || x.bo).split(String.fromCharCode(10))[0].slice(0, 12), /* @__PURE__ */ shim_react_default.createElement("span", { onPointerDown: (ev) => batDauKeo(ev, x, true), className: "absolute right-0 top-0 bottom-0 w-1.5 bg-white/60 cursor-ew-resize" }));
21807
- }))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "mb-2 text-[11px] flex flex-wrap items-center gap-1" }, /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, 'T\u1EEB \u0111i\u1EC3n t\xEAn ri\xEAng (sai \u2192 \u0111\xFAng, m\u1ED7i c\u1EB7p m\u1ED9t d\xF2ng "sai = \u0111\xFAng"):'), /* @__PURE__ */ shim_react_default.createElement("textarea", { className: "w-full h-12 bg-[#0B1A2D] border border-[#2C4A73] rounded p-1 text-[11px]", value: tuDien, onChange: (e) => setTuDien(e.target.value), placeholder: "t\xFA \u0111ao ai = T\xFA \u0110\xE0o AI" }), /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: luuTuDien }, "L\u01B0u t\u1EEB \u0111i\u1EC3n")), /* @__PURE__ */ shim_react_default.createElement("div", { className: "mb-2 text-[11px]" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: () => setMoLoi(!moLoi) }, moLoi ? "\u1EA8n" : "C\u1EAFt l\u1EDDi theo t\u1EEB", " (", tuLoi.length, " t\u1EEB", catTay.length ? ", xo\xE1 " + catTay.length : "", ")"), moLoi ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "mt-1 max-h-32 overflow-auto bg-[#0B1A2D] border border-[#2C4A73] rounded p-1 leading-6" }, tuLoi.length ? tuLoi.map((w, k) => /* @__PURE__ */ shim_react_default.createElement("span", { key: k, onClick: () => batCat(w), title: (+w.t0).toFixed(2) + " s", className: "cursor-pointer px-0.5 rounded " + (daCat(w) ? "line-through text-red-400 bg-red-900/30" : "hover:bg-[#1E3A5F]") }, w.text, " ")) : /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, "Ch\u01B0a c\xF3 l\u1EDDi (ch\u1EA1y L\xE0m pro tr\u01B0\u1EDBc)")) : null, moLoi && catTay.length ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "mt-1 flex flex-wrap gap-1" }, catTay.map((r, k) => /* @__PURE__ */ shim_react_default.createElement("span", { key: k, className: "px-1 rounded bg-red-900/30 text-red-300 whitespace-nowrap" }, r.tu, " ", /* @__PURE__ */ shim_react_default.createElement("button", { title: "\u0111\u1EA7u s\u1EDBm 0,05 s", onClick: () => chinhCat(k, "t0", -0.05) }, "\u25C0"), (+r.t0).toFixed(2), /* @__PURE__ */ shim_react_default.createElement("button", { title: "\u0111\u1EA7u mu\u1ED9n 0,05 s", onClick: () => chinhCat(k, "t0", 0.05) }, "\u25B6"), "\u2013", /* @__PURE__ */ shim_react_default.createElement("button", { title: "cu\u1ED1i s\u1EDBm 0,05 s", onClick: () => chinhCat(k, "t1", -0.05) }, "\u25C0"), (+r.t1).toFixed(2), /* @__PURE__ */ shim_react_default.createElement("button", { title: "cu\u1ED1i mu\u1ED9n 0,05 s", onClick: () => chinhCat(k, "t1", 0.05) }, "\u25B6"), " ", /* @__PURE__ */ shim_react_default.createElement("button", { className: "font-bold", title: "nghe th\u1EED ch\u1ED7 c\u1EAFt (1,2 s tr\u01B0\u1EDBc + 1,2 s sau)", onClick: () => ngheCat(r.t0, r.t1) }, "\u{1F50A}")))) : null), /* @__PURE__ */ shim_react_default.createElement("datalist", { id: "xvai-kho-anh" }, dsTenTaiSan().map((t) => /* @__PURE__ */ shim_react_default.createElement("option", { key: t, value: t }))), /* @__PURE__ */ shim_react_default.createElement("datalist", { id: "xvai-icon" }, [["tich", "d\u1EA5u t\xEDch"], ["sao", "ng\xF4i sao"], ["tim", "tr\xE1i tim"], ["xu", "\u0111\u1ED3ng xu / ti\u1EC1n"], ["dongho", "\u0111\u1ED3ng h\u1ED3"], ["luu", "l\u01B0u / \u0111\xE1nh d\u1EA5u"], ["canh", "c\u1EA3nh b\xE1o"], ["bieu", "bi\u1EC3u \u0111\u1ED3"], ["lua", "ng\u1ECDn l\u1EEDa"], ["tenlua", "t\xEAn l\u1EEDa"], ["bongden", "b\xF3ng \u0111\xE8n \xFD t\u01B0\u1EDFng"], ["qua", "h\u1ED9p qu\xE0"], ["giohang", "gi\u1ECF h\xE0ng"], ["nha", "ng\xF4i nh\xE0"], ["sach", "quy\u1EC3n s\xE1ch"], ["dienthoai", "\u0111i\u1EC7n tho\u1EA1i"], ["cup", "c\xFAp"], ["khien", "khi\xEAn"], ["la", "chi\u1EBFc l\xE1"], ["giot", "gi\u1ECDt n\u01B0\u1EDBc"], ["kinhlup", "k\xEDnh l\xFAp"], ["sai", "d\u1EA5u sai"], ["chuot", "con tr\u1ECF chu\u1ED9t"], ["none", "kh\xF4ng icon"]].map(([v, n]) => /* @__PURE__ */ shim_react_default.createElement("option", { key: v, value: v }, n))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "max-h-[60vh] overflow-auto" }, /* @__PURE__ */ shim_react_default.createElement("table", { className: "w-full text-[11px]" }, /* @__PURE__ */ shim_react_default.createElement("thead", null, /* @__PURE__ */ shim_react_default.createElement("tr", { className: "text-[#A2B2C9]" }, /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "#"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "khung"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "gi\xE2y"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "b\u1ED1 c\u1EE5c"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "\u0111\u1EA7u/d\xE0i (s)"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "ch\u1EEF nh\u1EA5n"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "y / c\u1EE1"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "ch\u1EEF ph\u1EE5"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "icon"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "\u1EA3nh (t\xEAn kho)"), /* @__PURE__ */ shim_react_default.createElement("th", null, "fx"), /* @__PURE__ */ shim_react_default.createElement("th", null, "xo\xE1"))), /* @__PURE__ */ shim_react_default.createElement("tbody", null, ds2.map((s) => {
21885
+ }))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "mb-2 text-[11px] flex flex-wrap items-center gap-1" }, /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, 'T\u1EEB \u0111i\u1EC3n t\xEAn ri\xEAng (sai \u2192 \u0111\xFAng, m\u1ED7i c\u1EB7p m\u1ED9t d\xF2ng "sai = \u0111\xFAng"):'), /* @__PURE__ */ shim_react_default.createElement("textarea", { className: "w-full h-12 bg-[#0B1A2D] border border-[#2C4A73] rounded p-1 text-[11px]", value: tuDien, onChange: (e) => setTuDien(e.target.value), placeholder: "t\xFA \u0111ao ai = T\xFA \u0110\xE0o AI" }), /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: luuTuDien }, "L\u01B0u t\u1EEB \u0111i\u1EC3n")), /* @__PURE__ */ shim_react_default.createElement("div", { className: "mb-2 text-[11px]" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: () => setMoLoi(!moLoi) }, moLoi ? "\u1EA8n" : "C\u1EAFt l\u1EDDi theo t\u1EEB", " (", tuLoi.length, " t\u1EEB", catTay.length ? ", xo\xE1 " + catTay.length : "", ")"), moLoi ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "mt-1 max-h-32 overflow-auto bg-[#0B1A2D] border border-[#2C4A73] rounded p-1 leading-6" }, tuLoi.length ? tuLoi.map((w, k) => /* @__PURE__ */ shim_react_default.createElement("span", { key: k, onClick: () => batCat(w), title: (+w.t0).toFixed(2) + " s", className: "cursor-pointer px-0.5 rounded " + (daCat(w) ? "line-through text-red-400 bg-red-900/30" : "hover:bg-[#1E3A5F]") }, w.text, " ")) : /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, "Ch\u01B0a c\xF3 l\u1EDDi (ch\u1EA1y L\xE0m pro tr\u01B0\u1EDBc)")) : null, moLoi && catTay.length ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "mt-1 flex flex-wrap gap-1" }, catTay.map((r, k) => /* @__PURE__ */ shim_react_default.createElement("span", { key: k, className: "px-1 rounded bg-red-900/30 text-red-300 whitespace-nowrap" }, r.tu, " ", /* @__PURE__ */ shim_react_default.createElement("button", { title: "\u0111\u1EA7u s\u1EDBm 0,05 s", onClick: () => chinhCat(k, "t0", -0.05) }, "\u25C0"), (+r.t0).toFixed(2), /* @__PURE__ */ shim_react_default.createElement("button", { title: "\u0111\u1EA7u mu\u1ED9n 0,05 s", onClick: () => chinhCat(k, "t0", 0.05) }, "\u25B6"), "\u2013", /* @__PURE__ */ shim_react_default.createElement("button", { title: "cu\u1ED1i s\u1EDBm 0,05 s", onClick: () => chinhCat(k, "t1", -0.05) }, "\u25C0"), (+r.t1).toFixed(2), /* @__PURE__ */ shim_react_default.createElement("button", { title: "cu\u1ED1i mu\u1ED9n 0,05 s", onClick: () => chinhCat(k, "t1", 0.05) }, "\u25B6"), " ", /* @__PURE__ */ shim_react_default.createElement("button", { className: "font-bold", title: "nghe th\u1EED ch\u1ED7 c\u1EAFt (1,2 s tr\u01B0\u1EDBc + 1,2 s sau)", onClick: () => ngheCat(r.t0, r.t1) }, "\u{1F50A}")))) : null), chonAnh ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "fixed inset-0 z-50 bg-black/70 flex items-center justify-center", onClick: () => setChonAnh("") }, /* @__PURE__ */ shim_react_default.createElement("div", { className: "bg-[#0F2236] border border-[#2C4A73] rounded-xl p-3 max-w-[92%] max-h-[80vh] overflow-auto", onClick: (ev) => ev.stopPropagation() }, /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[12px] mb-2 font-bold" }, "Ch\u1ECDn \u1EA3nh tr\xE1m cho c\u1EA3nh \u2014 b\u1EA5m v\xE0o \u1EA3nh (T\u1EA3i \u1EA3nh/clip v\xE0o kho \u0111\u1EC3 th\xEAm \u1EA3nh c\u1EE7a anh)"), /* @__PURE__ */ shim_react_default.createElement("div", { className: "flex flex-wrap gap-2" }, dsTenTaiSan().filter((t) => /^(anh|trang|vat|video|clip):/.test(t)).map((t) => /* @__PURE__ */ shim_react_default.createElement("button", { key: t, title: t, className: "rounded overflow-hidden border border-[#2C4A73] hover:border-[#F6D178] bg-[#0B1A2D]", onClick: () => {
21886
+ dat(chonAnh, "ten", t);
21887
+ setChonAnh("");
21888
+ } }, thumb(t) ? /* @__PURE__ */ shim_react_default.createElement("img", { src: thumb(t), className: "w-[72px] h-[128px] object-cover" }) : /* @__PURE__ */ shim_react_default.createElement("div", { className: "w-[72px] h-[128px] text-[9px] p-1 break-all" }, t), /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[9px] w-[72px] truncate px-1" }, t.replace(/^[a-z]+:/, ""))))))) : null, /* @__PURE__ */ shim_react_default.createElement("datalist", { id: "xvai-kho-anh" }, dsTenTaiSan().map((t) => /* @__PURE__ */ shim_react_default.createElement("option", { key: t, value: t }))), /* @__PURE__ */ shim_react_default.createElement("datalist", { id: "xvai-icon" }, [["tich", "d\u1EA5u t\xEDch"], ["sao", "ng\xF4i sao"], ["tim", "tr\xE1i tim"], ["xu", "\u0111\u1ED3ng xu / ti\u1EC1n"], ["dongho", "\u0111\u1ED3ng h\u1ED3"], ["luu", "l\u01B0u / \u0111\xE1nh d\u1EA5u"], ["canh", "c\u1EA3nh b\xE1o"], ["bieu", "bi\u1EC3u \u0111\u1ED3"], ["lua", "ng\u1ECDn l\u1EEDa"], ["tenlua", "t\xEAn l\u1EEDa"], ["bongden", "b\xF3ng \u0111\xE8n \xFD t\u01B0\u1EDFng"], ["qua", "h\u1ED9p qu\xE0"], ["giohang", "gi\u1ECF h\xE0ng"], ["nha", "ng\xF4i nh\xE0"], ["sach", "quy\u1EC3n s\xE1ch"], ["dienthoai", "\u0111i\u1EC7n tho\u1EA1i"], ["cup", "c\xFAp"], ["khien", "khi\xEAn"], ["la", "chi\u1EBFc l\xE1"], ["giot", "gi\u1ECDt n\u01B0\u1EDBc"], ["kinhlup", "k\xEDnh l\xFAp"], ["sai", "d\u1EA5u sai"], ["chuot", "con tr\u1ECF chu\u1ED9t"], ["none", "kh\xF4ng icon"]].map(([v, n]) => /* @__PURE__ */ shim_react_default.createElement("option", { key: v, value: v }, n))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "max-h-[60vh] overflow-auto" }, /* @__PURE__ */ shim_react_default.createElement("table", { className: "w-full text-[11px]" }, /* @__PURE__ */ shim_react_default.createElement("thead", null, /* @__PURE__ */ shim_react_default.createElement("tr", { className: "text-[#A2B2C9]" }, /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "#"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "khung"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "gi\xE2y"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "b\u1ED1 c\u1EE5c"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "\u0111\u1EA7u/d\xE0i (s)"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "ch\u1EEF nh\u1EA5n"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "y / c\u1EE1"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "ch\u1EEF ph\u1EE5"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "icon"), /* @__PURE__ */ shim_react_default.createElement("th", { className: "text-left" }, "\u1EA3nh (t\xEAn kho)"), /* @__PURE__ */ shim_react_default.createElement("th", null, "fx"), /* @__PURE__ */ shim_react_default.createElement("th", null, "xo\xE1"))), /* @__PURE__ */ shim_react_default.createElement("tbody", null, ds2.map((s) => {
21808
21889
  const e = sua[s.id] || sua[s.i] || {};
21809
21890
  const v = (k) => (typeof e[k] === "string" ? e[k] : s[k]) || "";
21810
- return /* @__PURE__ */ shim_react_default.createElement("tr", { key: s.id || s.i, className: e.xoa ? "opacity-40" : s.khoa ? "bg-[#1E3A5F]/40" : "" }, /* @__PURE__ */ shim_react_default.createElement("td", null, s.i), /* @__PURE__ */ shim_react_default.createElement("td", null, khung[(+s.f).toFixed(1)] ? /* @__PURE__ */ shim_react_default.createElement("img", { src: khung[(+s.f).toFixed(1)], width: 45, height: 80, className: "rounded cursor-zoom-in", onClick: () => setKhungTo(khung[(+s.f).toFixed(1)]) }) : /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, "\u2026")), /* @__PURE__ */ shim_react_default.createElement("td", null, s.f.toFixed(1), "\u2013", (s.f + s.d).toFixed(1)), /* @__PURE__ */ shim_react_default.createElement("td", null, s.bo), /* @__PURE__ */ shim_react_default.createElement("td", { className: "whitespace-nowrap" }, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: typeof e.f === "number" ? e.f : s.f, onChange: (ev) => dat(s.id || String(s.i), "f", +ev.target.value), type: "number", step: "0.1" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: typeof e.d === "number" ? e.d : s.d, onChange: (ev) => dat(s.id || String(s.i), "d", +ev.target.value), type: "number", step: "0.1", min: "0.4" })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-full bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: v(/^(anh|chia)$/.test(s.bo) && !s.giant ? "chu" : "giant"), onChange: (ev) => dat(s.id || String(s.i), /^(anh|chia)$/.test(s.bo) && !s.giant ? "chu" : "giant", ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", { className: "whitespace-nowrap" }, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.02", min: "0.05", max: "0.6", placeholder: "y", value: typeof e.yChu === "number" ? e.yChu : s.yChu ?? "", onChange: (ev) => dat(s.id || String(s.i), "yChu", +ev.target.value), title: "v\u1ECB tr\xED ch\u1EEF nh\u1EA5n (0,05 tr\xEAn \u2013 0,6 d\u01B0\u1EDBi)" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.1", min: "0.5", max: "1.6", placeholder: "\xD71", value: typeof e.coChu === "number" ? e.coChu : s.coChu ?? "", onChange: (ev) => dat(s.id || String(s.i), "coChu", +ev.target.value), title: "c\u1EE1 ch\u1EEF nh\u1EA5n \xD70,5\u20131,6" })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-full bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: v("chu2") || (/^(anh|chia)$/.test(s.bo) && !s.giant ? "" : v("chu")), onChange: (ev) => dat(s.id || String(s.i), s.chu2 || !s.chu || /^(anh|chia)$/.test(s.bo) && !s.giant ? "chu2" : "chu", ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-20 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", list: "xvai-icon", value: v("st"), onChange: (ev) => dat(s.id || String(s.i), "st", ev.target.value), placeholder: "ch\u1ECDn icon\u2026" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-10 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.05", min: "0.05", max: "0.95", placeholder: "x", title: "v\u1ECB tr\xED icon ngang 0,05\u20130,95", value: typeof e.stX === "number" ? e.stX : s.stX ?? "", onChange: (ev) => dat(s.id || String(s.i), "stX", +ev.target.value) }), /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-10 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.05", min: "0.05", max: "0.95", placeholder: "y", title: "v\u1ECB tr\xED icon d\u1ECDc", value: typeof e.stY === "number" ? e.stY : s.stY ?? "", onChange: (ev) => dat(s.id || String(s.i), "stY", +ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-24 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", list: "xvai-kho-anh", value: v("ten"), onChange: (ev) => dat(s.id || String(s.i), "ten", ev.target.value), placeholder: "trang:\u2026 / anh:\u2026" })), /* @__PURE__ */ shim_react_default.createElement("td", { className: "text-center" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3 + (Object.keys(fxCua(s)).length ? " bg-[#F6D178] text-[#122238]" : ""), onClick: () => setFxMo(fxMo === (s.id || String(s.i)) ? "" : s.id || String(s.i)) }, "fx"), fxMo === (s.id || String(s.i)) ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "absolute z-40 bg-[#0B1A2D] border border-[#F6D178] rounded p-2 text-[11px] w-56 text-left", onClick: (ev) => ev.stopPropagation() }, [["sang", "s\xE1ng", 0.5, 1.6, 1], ["tuongPhan", "t\u01B0\u01A1ng ph\u1EA3n", 0.5, 1.6, 1], ["baoHoa", "t\u01B0\u01A1i", 0, 1.8, 1], ["am", "\u1EA5m", 0, 0.6, 0], ["mo", "m\u1EDD (px)", 0, 10, 0], ["xam", "\u0111en tr\u1EAFng", 0, 1, 0]].map((r) => /* @__PURE__ */ shim_react_default.createElement("label", { key: r[0], className: "flex items-center gap-1" }, r[1], " ", /* @__PURE__ */ shim_react_default.createElement("input", { type: "range", min: r[2], max: r[3], step: r[0] === "mo" ? 0.5 : 0.05, value: fxCua(s)[r[0]] ?? r[4], onChange: (ev) => datFxCanh(s, r[0], +ev.target.value), className: "flex-1" }), " ", (+(fxCua(s)[r[0]] ?? r[4])).toFixed(2))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "flex gap-1 mt-1" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: () => {
21891
+ return /* @__PURE__ */ shim_react_default.createElement("tr", { key: s.id || s.i, className: e.xoa ? "opacity-40" : s.khoa ? "bg-[#1E3A5F]/40" : "" }, /* @__PURE__ */ shim_react_default.createElement("td", null, s.i), /* @__PURE__ */ shim_react_default.createElement("td", null, khung[(+s.f).toFixed(1)] ? /* @__PURE__ */ shim_react_default.createElement("img", { src: khung[(+s.f).toFixed(1)], width: 45, height: 80, className: "rounded cursor-zoom-in", onClick: () => setKhungTo(khung[(+s.f).toFixed(1)]) }) : /* @__PURE__ */ shim_react_default.createElement("span", { className: "text-[#A2B2C9]" }, "\u2026")), /* @__PURE__ */ shim_react_default.createElement("td", null, s.f.toFixed(1), "\u2013", (s.f + s.d).toFixed(1)), /* @__PURE__ */ shim_react_default.createElement("td", null, s.bo), /* @__PURE__ */ shim_react_default.createElement("td", { className: "whitespace-nowrap" }, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: typeof e.f === "number" ? e.f : s.f, onChange: (ev) => dat(s.id || String(s.i), "f", +ev.target.value), type: "number", step: "0.1" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: typeof e.d === "number" ? e.d : s.d, onChange: (ev) => dat(s.id || String(s.i), "d", +ev.target.value), type: "number", step: "0.1", min: "0.4" })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-full bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: v(/^(anh|chia)$/.test(s.bo) && !s.giant ? "chu" : "giant"), onChange: (ev) => dat(s.id || String(s.i), /^(anh|chia)$/.test(s.bo) && !s.giant ? "chu" : "giant", ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", { className: "whitespace-nowrap" }, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.02", min: "0.05", max: "0.6", placeholder: "y", value: typeof e.yChu === "number" ? e.yChu : s.yChu ?? "", onChange: (ev) => dat(s.id || String(s.i), "yChu", +ev.target.value), title: "v\u1ECB tr\xED ch\u1EEF nh\u1EA5n (0,05 tr\xEAn \u2013 0,6 d\u01B0\u1EDBi)" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-12 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.1", min: "0.5", max: "1.6", placeholder: "\xD71", value: typeof e.coChu === "number" ? e.coChu : s.coChu ?? "", onChange: (ev) => dat(s.id || String(s.i), "coChu", +ev.target.value), title: "c\u1EE1 ch\u1EEF nh\u1EA5n \xD70,5\u20131,6" })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-full bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", value: v("chu2") || (/^(anh|chia)$/.test(s.bo) && !s.giant ? "" : v("chu")), onChange: (ev) => dat(s.id || String(s.i), s.chu2 || !s.chu || /^(anh|chia)$/.test(s.bo) && !s.giant ? "chu2" : "chu", ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-20 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", list: "xvai-icon", value: v("st"), onChange: (ev) => dat(s.id || String(s.i), "st", ev.target.value), placeholder: "ch\u1ECDn icon\u2026" }), " ", /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-10 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.05", min: "0.05", max: "0.95", placeholder: "x", title: "v\u1ECB tr\xED icon ngang 0,05\u20130,95", value: typeof e.stX === "number" ? e.stX : s.stX ?? "", onChange: (ev) => dat(s.id || String(s.i), "stX", +ev.target.value) }), /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-10 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", type: "number", step: "0.05", min: "0.05", max: "0.95", placeholder: "y", title: "v\u1ECB tr\xED icon d\u1ECDc", value: typeof e.stY === "number" ? e.stY : s.stY ?? "", onChange: (ev) => dat(s.id || String(s.i), "stY", +ev.target.value) })), /* @__PURE__ */ shim_react_default.createElement("td", null, /* @__PURE__ */ shim_react_default.createElement("input", { className: "w-24 bg-[#0B1A2D] border border-[#2C4A73] rounded px-1", list: "xvai-kho-anh", value: v("ten"), onChange: (ev) => dat(s.id || String(s.i), "ten", ev.target.value), placeholder: "trang:\u2026 / anh:\u2026" }), /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3 + " ml-1", title: "ch\u1ECDn \u1EA3nh t\u1EEB kho b\u1EB1ng l\u01B0\u1EDBi \u1EA3nh", onClick: () => setChonAnh(s.id || String(s.i)) }, "\u25A6")), /* @__PURE__ */ shim_react_default.createElement("td", { className: "text-center" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3 + (Object.keys(fxCua(s)).length ? " bg-[#F6D178] text-[#122238]" : ""), onClick: () => setFxMo(fxMo === (s.id || String(s.i)) ? "" : s.id || String(s.i)) }, "fx"), fxMo === (s.id || String(s.i)) ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "absolute z-40 bg-[#0B1A2D] border border-[#F6D178] rounded p-2 text-[11px] w-56 text-left", onClick: (ev) => ev.stopPropagation() }, [["sang", "s\xE1ng", 0.5, 1.6, 1], ["tuongPhan", "t\u01B0\u01A1ng ph\u1EA3n", 0.5, 1.6, 1], ["baoHoa", "t\u01B0\u01A1i", 0, 1.8, 1], ["am", "\u1EA5m", 0, 0.6, 0], ["mo", "m\u1EDD (px)", 0, 10, 0], ["xam", "\u0111en tr\u1EAFng", 0, 1, 0]].map((r) => /* @__PURE__ */ shim_react_default.createElement("label", { key: r[0], className: "flex items-center gap-1" }, r[1], " ", /* @__PURE__ */ shim_react_default.createElement("input", { type: "range", min: r[2], max: r[3], step: r[0] === "mo" ? 0.5 : 0.05, value: fxCua(s)[r[0]] ?? r[4], onChange: (ev) => datFxCanh(s, r[0], +ev.target.value), className: "flex-1" }), " ", (+(fxCua(s)[r[0]] ?? r[4])).toFixed(2))), /* @__PURE__ */ shim_react_default.createElement("div", { className: "flex gap-1 mt-1" }, /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: () => {
21811
21892
  dat(s.id || String(s.i), "fx", {});
21812
21893
  } }, "V\u1EC1 g\u1ED1c"), /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, onClick: () => setFxMo("") }, "\u0110\xF3ng"))) : null), /* @__PURE__ */ shim_react_default.createElement("td", { className: "text-center" }, /* @__PURE__ */ shim_react_default.createElement("input", { type: "checkbox", checked: !!e.xoa, onChange: (ev) => dat(s.id || String(s.i), "xoa", ev.target.checked ? 1 : 0) }), " ", sua[s.id] || sua[s.i] ? /* @__PURE__ */ shim_react_default.createElement("button", { className: nut3, title: "AI l\xE0m l\u1EA1i c\u1EA3nh n\xE0y (b\u1ECF s\u1EEDa tay)", onClick: () => boSuaCanh(s) }, "\u21BA") : null));
21813
21894
  })))), khungTo ? /* @__PURE__ */ shim_react_default.createElement("div", { className: "fixed inset-0 bg-black/70 flex items-center justify-center z-50", onClick: () => setKhungTo("") }, /* @__PURE__ */ shim_react_default.createElement("img", { src: khungTo, style: { height: "80vh" }, className: "rounded" })) : null, /* @__PURE__ */ shim_react_default.createElement("div", { className: "text-[#A2B2C9] mt-2" }, "Ch\u1EEF nh\u1EA5n xu\u1ED1ng d\xF2ng: g\xF5 \\n. Icon: tich, luu, chuot, sao, tim, dong-ho\u2026 (t\xEAn trong veSticker). S\u1EEDa xong b\u1EA5m V\u1EBD l\u1EA1i (~2\u20135 ph\xFAt)."));