@iyulab/flex-table 0.59.0 → 0.61.0
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/CHANGELOG.md +28 -0
- package/README.md +27 -5
- package/dist/array/index.d.ts +3 -0
- package/dist/array/index.js +46 -38
- package/dist/array/source.d.ts +3 -0
- package/dist/array/types.d.ts +3 -0
- package/dist/array/view.d.ts +6 -0
- package/dist/core/fetch-all.d.ts +14 -0
- package/dist/core/source-error.d.ts +13 -1
- package/dist/fetch-all-J37bOtgc.js +86 -0
- package/dist/{flex-table-BDTykqUE.js → flex-table-BD_T3SqO.js} +84 -77
- package/dist/flex-table.d.ts +29 -9
- package/dist/flex-table.js +3 -3
- package/dist/index.d.ts +2 -1
- package/dist/{locale-Cfm-vJji.js → locale-D9g0ksXq.js} +4 -2
- package/dist/locale.d.ts +1 -1
- package/dist/odata/index.d.ts +4 -0
- package/dist/odata/index.js +5 -5
- package/dist/odata/query.d.ts +7 -3
- package/dist/odata/source.d.ts +9 -0
- package/dist/odata/types.d.ts +3 -0
- package/dist/react.d.ts +2 -0
- package/dist/react.js +75 -62
- package/dist/source-DNPtWmC3.js +202 -0
- package/dist/{view-DiLr-TdY.js → view-BtoXdUGF.js} +13 -2
- package/package.json +1 -1
- package/skills/iyulab-flex-table/references/api.md +8 -4
- package/skills/iyulab-flex-table/references/react.md +2 -1
- package/dist/query-Dw4iO0ir.js +0 -37
- package/dist/source-DOue0Ti3.js +0 -223
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as e } from "./locale-
|
|
1
|
+
import { n as e } from "./locale-D9g0ksXq.js";
|
|
2
2
|
import { n as t, t as n } from "./sorting-CjfjRxwL.js";
|
|
3
3
|
import { LitElement as r, css as i, html as a, nothing as o } from "lit";
|
|
4
4
|
import { customElement as s, property as c, state as l } from "lit/decorators.js";
|
|
@@ -1203,7 +1203,7 @@ var ce = class {
|
|
|
1203
1203
|
shiftMoveRight() {
|
|
1204
1204
|
return this.activeCell ? this.setActiveWithRange(this.activeCell.row, this.activeCell.col + 1) : null;
|
|
1205
1205
|
}
|
|
1206
|
-
},
|
|
1206
|
+
}, le = class {
|
|
1207
1207
|
constructor() {
|
|
1208
1208
|
this.current = null;
|
|
1209
1209
|
}
|
|
@@ -1225,7 +1225,7 @@ var ce = class {
|
|
|
1225
1225
|
let e = this.current;
|
|
1226
1226
|
return this.current = null, e;
|
|
1227
1227
|
}
|
|
1228
|
-
},
|
|
1228
|
+
}, O = class {
|
|
1229
1229
|
constructor() {
|
|
1230
1230
|
this._selected = /* @__PURE__ */ new Set(), this._mode = "multi";
|
|
1231
1231
|
}
|
|
@@ -1292,7 +1292,7 @@ var ce = class {
|
|
|
1292
1292
|
};
|
|
1293
1293
|
//#endregion
|
|
1294
1294
|
//#region src/core/filtering.ts
|
|
1295
|
-
function
|
|
1295
|
+
function ue(e, t, n) {
|
|
1296
1296
|
if (t.length === 0) return Array.from({ length: e.length }, (e, t) => t);
|
|
1297
1297
|
let r = [];
|
|
1298
1298
|
for (let i = 0; i < e.length; i++) {
|
|
@@ -1311,9 +1311,9 @@ function le(e, t, n) {
|
|
|
1311
1311
|
}
|
|
1312
1312
|
//#endregion
|
|
1313
1313
|
//#region src/core/undo.ts
|
|
1314
|
-
var
|
|
1314
|
+
var de = 100, k = class {
|
|
1315
1315
|
constructor() {
|
|
1316
|
-
this._undoStack = [], this._redoStack = [], this._maxSize =
|
|
1316
|
+
this._undoStack = [], this._redoStack = [], this._maxSize = de;
|
|
1317
1317
|
}
|
|
1318
1318
|
get maxSize() {
|
|
1319
1319
|
return this._maxSize;
|
|
@@ -1350,7 +1350,7 @@ var ue = 100, A = class {
|
|
|
1350
1350
|
};
|
|
1351
1351
|
//#endregion
|
|
1352
1352
|
//#region src/clipboard/clipboard.ts
|
|
1353
|
-
function
|
|
1353
|
+
function fe(e, t, n) {
|
|
1354
1354
|
let r = [];
|
|
1355
1355
|
for (let i = n.startRow; i <= n.endRow; i++) {
|
|
1356
1356
|
let a = e[i], o = [];
|
|
@@ -1362,7 +1362,7 @@ function de(e, t, n) {
|
|
|
1362
1362
|
}
|
|
1363
1363
|
return _(r);
|
|
1364
1364
|
}
|
|
1365
|
-
function
|
|
1365
|
+
function A(e, t) {
|
|
1366
1366
|
if (e === "") return null;
|
|
1367
1367
|
switch (t.type) {
|
|
1368
1368
|
case "number": {
|
|
@@ -1377,19 +1377,19 @@ function j(e, t) {
|
|
|
1377
1377
|
default: return e;
|
|
1378
1378
|
}
|
|
1379
1379
|
}
|
|
1380
|
-
function
|
|
1380
|
+
function j(e) {
|
|
1381
1381
|
let t = String(e);
|
|
1382
1382
|
if (!Number.isFinite(e) || t.includes("e")) return t;
|
|
1383
1383
|
let n = new Intl.NumberFormat(u.get()).formatToParts(1.5).find((e) => e.type === "decimal")?.value;
|
|
1384
1384
|
return n && n !== "." ? t.replace(".", n) : t;
|
|
1385
1385
|
}
|
|
1386
|
-
function
|
|
1386
|
+
function pe(e) {
|
|
1387
1387
|
if (e == null || e === "") return "";
|
|
1388
1388
|
if (e instanceof Date) return Number.isNaN(e.getTime()) ? "" : `${e.getFullYear()}-${String(e.getMonth() + 1).padStart(2, "0")}-${String(e.getDate()).padStart(2, "0")}`;
|
|
1389
1389
|
let t = String(e), n = /^(\d{4}-\d{2}-\d{2})(?:$|T)/.exec(t);
|
|
1390
1390
|
return n ? n[1] : t;
|
|
1391
1391
|
}
|
|
1392
|
-
function
|
|
1392
|
+
function me(e) {
|
|
1393
1393
|
if (e == null || e === "") return "";
|
|
1394
1394
|
let t = e instanceof Date ? "" : String(e), n = /^(\d{4}-\d{2}-\d{2})T(\d{2}:\d{2})(?::\d{2}(?:\.\d+)?)?$/.exec(t);
|
|
1395
1395
|
if (n) return `${n[1]} ${n[2]}`;
|
|
@@ -1400,7 +1400,7 @@ function pe(e) {
|
|
|
1400
1400
|
}
|
|
1401
1401
|
//#endregion
|
|
1402
1402
|
//#region src/export/xlsx-writer.ts
|
|
1403
|
-
var
|
|
1403
|
+
var he = (() => {
|
|
1404
1404
|
let e = /* @__PURE__ */ new Uint32Array(256);
|
|
1405
1405
|
for (let t = 0; t < 256; t++) {
|
|
1406
1406
|
let n = t;
|
|
@@ -1409,23 +1409,23 @@ var me = (() => {
|
|
|
1409
1409
|
}
|
|
1410
1410
|
return e;
|
|
1411
1411
|
})();
|
|
1412
|
-
function
|
|
1412
|
+
function ge(e) {
|
|
1413
1413
|
let t = 4294967295;
|
|
1414
|
-
for (let n = 0; n < e.length; n++) t =
|
|
1414
|
+
for (let n = 0; n < e.length; n++) t = he[(t ^ e[n]) & 255] ^ t >>> 8;
|
|
1415
1415
|
return (t ^ 4294967295) >>> 0;
|
|
1416
1416
|
}
|
|
1417
|
-
var
|
|
1418
|
-
function
|
|
1419
|
-
return
|
|
1417
|
+
var M = new TextEncoder();
|
|
1418
|
+
function _e(e) {
|
|
1419
|
+
return N(e.map((e) => ({
|
|
1420
1420
|
...e,
|
|
1421
1421
|
body: e.data,
|
|
1422
1422
|
method: 0
|
|
1423
1423
|
})));
|
|
1424
1424
|
}
|
|
1425
|
-
async function
|
|
1425
|
+
async function ve(e) {
|
|
1426
1426
|
let t = [];
|
|
1427
1427
|
for (let n of e) {
|
|
1428
|
-
let e = await
|
|
1428
|
+
let e = await ye(n.data);
|
|
1429
1429
|
t.push(e.length < n.data.length ? {
|
|
1430
1430
|
...n,
|
|
1431
1431
|
body: e,
|
|
@@ -1436,9 +1436,9 @@ async function _e(e) {
|
|
|
1436
1436
|
method: 0
|
|
1437
1437
|
});
|
|
1438
1438
|
}
|
|
1439
|
-
return
|
|
1439
|
+
return N(t);
|
|
1440
1440
|
}
|
|
1441
|
-
async function
|
|
1441
|
+
async function ye(e) {
|
|
1442
1442
|
let t = new CompressionStream("deflate-raw"), n = t.writable.getWriter(), r = t.readable.getReader();
|
|
1443
1443
|
n.write(e), n.close();
|
|
1444
1444
|
let i = [];
|
|
@@ -1447,52 +1447,52 @@ async function ve(e) {
|
|
|
1447
1447
|
if (e) break;
|
|
1448
1448
|
i.push(t);
|
|
1449
1449
|
}
|
|
1450
|
-
return
|
|
1450
|
+
return P(i);
|
|
1451
1451
|
}
|
|
1452
|
-
function
|
|
1452
|
+
function N(e) {
|
|
1453
1453
|
let t = [], n = [], r = 0;
|
|
1454
1454
|
for (let i of e) {
|
|
1455
|
-
let e =
|
|
1455
|
+
let e = M.encode(i.name), a = ge(i.data), o = i.data.length, s = i.body.length, c = i.method === 8 ? 20 : 10, l = new ArrayBuffer(30 + e.length), u = new DataView(l);
|
|
1456
1456
|
u.setUint32(0, 67324752, !0), u.setUint16(4, c, !0), u.setUint16(6, 0, !0), u.setUint16(8, i.method, !0), u.setUint16(10, 0, !0), u.setUint16(12, 33, !0), u.setUint32(14, a, !0), u.setUint32(18, s, !0), u.setUint32(22, o, !0), u.setUint16(26, e.length, !0), u.setUint16(28, 0, !0), new Uint8Array(l, 30).set(e), t.push(new Uint8Array(l)), t.push(i.body);
|
|
1457
1457
|
let d = new ArrayBuffer(46 + e.length), f = new DataView(d);
|
|
1458
1458
|
f.setUint32(0, 33639248, !0), f.setUint16(4, 20, !0), f.setUint16(6, c, !0), f.setUint16(8, 0, !0), f.setUint16(10, i.method, !0), f.setUint16(12, 0, !0), f.setUint16(14, 33, !0), f.setUint32(16, a, !0), f.setUint32(20, s, !0), f.setUint32(24, o, !0), f.setUint16(28, e.length, !0), f.setUint16(30, 0, !0), f.setUint16(32, 0, !0), f.setUint16(34, 0, !0), f.setUint16(36, 0, !0), f.setUint32(38, 0, !0), f.setUint32(42, r, !0), new Uint8Array(d, 46).set(e), n.push(new Uint8Array(d)), r += 30 + e.length + s;
|
|
1459
1459
|
}
|
|
1460
|
-
let i =
|
|
1461
|
-
return o.setUint32(0, 101010256, !0), o.setUint16(4, 0, !0), o.setUint16(6, 0, !0), o.setUint16(8, e.length, !0), o.setUint16(10, e.length, !0), o.setUint32(12, i.length, !0), o.setUint32(16, r, !0), o.setUint16(20, 0, !0),
|
|
1460
|
+
let i = P(n), a = /* @__PURE__ */ new ArrayBuffer(22), o = new DataView(a);
|
|
1461
|
+
return o.setUint32(0, 101010256, !0), o.setUint16(4, 0, !0), o.setUint16(6, 0, !0), o.setUint16(8, e.length, !0), o.setUint16(10, e.length, !0), o.setUint32(12, i.length, !0), o.setUint32(16, r, !0), o.setUint16(20, 0, !0), P([
|
|
1462
1462
|
...t,
|
|
1463
1463
|
i,
|
|
1464
1464
|
new Uint8Array(a)
|
|
1465
1465
|
]);
|
|
1466
1466
|
}
|
|
1467
|
-
function
|
|
1467
|
+
function P(e) {
|
|
1468
1468
|
let t = e.reduce((e, t) => e + t.length, 0), n = new Uint8Array(t), r = 0;
|
|
1469
1469
|
for (let t of e) n.set(t, r), r += t.length;
|
|
1470
1470
|
return n;
|
|
1471
1471
|
}
|
|
1472
|
-
function
|
|
1472
|
+
function F(e) {
|
|
1473
1473
|
return e.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """);
|
|
1474
1474
|
}
|
|
1475
|
-
function
|
|
1475
|
+
function be(e) {
|
|
1476
1476
|
let t = "";
|
|
1477
1477
|
for (e++; e > 0;) t = String.fromCharCode(64 + (e % 26 || 26)) + t, e = Math.floor((e - 1) / 26);
|
|
1478
1478
|
return t;
|
|
1479
1479
|
}
|
|
1480
|
-
function
|
|
1481
|
-
return
|
|
1480
|
+
function I(e, t) {
|
|
1481
|
+
return be(t) + (e + 1);
|
|
1482
1482
|
}
|
|
1483
|
-
function
|
|
1483
|
+
function xe(e) {
|
|
1484
1484
|
let t = Date.UTC(1899, 11, 30);
|
|
1485
1485
|
return (e.getTime() - t) / 864e5;
|
|
1486
1486
|
}
|
|
1487
|
-
var
|
|
1488
|
-
function
|
|
1489
|
-
let n = [], r = t.map((e, t) => `<c r="${
|
|
1487
|
+
var Se = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Types xmlns=\"http://schemas.openxmlformats.org/package/2006/content-types\">\n <Default Extension=\"rels\" ContentType=\"application/vnd.openxmlformats-package.relationships+xml\"/>\n <Default Extension=\"xml\" ContentType=\"application/xml\"/>\n <Override PartName=\"/xl/workbook.xml\" ContentType=\"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml\"/>\n <Override PartName=\"/xl/worksheets/sheet1.xml\" ContentType=\"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml\"/>\n <Override PartName=\"/xl/styles.xml\" ContentType=\"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml\"/>\n</Types>", Ce = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Relationships xmlns=\"http://schemas.openxmlformats.org/package/2006/relationships\">\n <Relationship Id=\"rId1\" Type=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument\" Target=\"xl/workbook.xml\"/>\n</Relationships>", we = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<workbook xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\" xmlns:r=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships\">\n <sheets><sheet name=\"Sheet1\" sheetId=\"1\" r:id=\"rId1\"/></sheets>\n</workbook>", Te = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<Relationships xmlns=\"http://schemas.openxmlformats.org/package/2006/relationships\">\n <Relationship Id=\"rId1\" Type=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet\" Target=\"worksheets/sheet1.xml\"/>\n <Relationship Id=\"rId2\" Type=\"http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles\" Target=\"styles.xml\"/>\n</Relationships>", Ee = "<?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"yes\"?>\n<styleSheet xmlns=\"http://schemas.openxmlformats.org/spreadsheetml/2006/main\">\n <numFmts count=\"1\"><numFmt numFmtId=\"164\" formatCode=\"yyyy-mm-dd\"/></numFmts>\n <fonts count=\"2\">\n <font><sz val=\"11\"/><name val=\"Calibri\"/></font>\n <font><sz val=\"11\"/><b/><name val=\"Calibri\"/></font>\n </fonts>\n <fills count=\"2\">\n <fill><patternFill patternType=\"none\"/></fill>\n <fill><patternFill patternType=\"gray125\"/></fill>\n </fills>\n <borders count=\"1\"><border><left/><right/><top/><bottom/><diagonal/></border></borders>\n <cellStyleXfs count=\"1\"><xf numFmtId=\"0\" fontId=\"0\" fillId=\"0\" borderId=\"0\"/></cellStyleXfs>\n <cellXfs count=\"3\">\n <xf numFmtId=\"0\" fontId=\"0\" fillId=\"0\" borderId=\"0\" xfId=\"0\"/>\n <xf numFmtId=\"164\" fontId=\"0\" fillId=\"0\" borderId=\"0\" xfId=\"0\" applyNumberFormat=\"1\"/>\n <xf numFmtId=\"0\" fontId=\"1\" fillId=\"0\" borderId=\"0\" xfId=\"0\" applyFont=\"1\"/>\n </cellXfs>\n</styleSheet>";
|
|
1488
|
+
function De(e, t) {
|
|
1489
|
+
let n = [], r = t.map((e, t) => `<c r="${I(0, t)}" t="str" s="2"><v>${F(e.label)}</v></c>`);
|
|
1490
1490
|
return n.push(`<row r="1">${r.join("")}</row>`), e.forEach((e, r) => {
|
|
1491
1491
|
let i = t.map((t, n) => {
|
|
1492
|
-
let i =
|
|
1492
|
+
let i = I(r + 1, n), a = e[t.key];
|
|
1493
1493
|
if (a == null) return `<c r="${i}" t="str"><v></v></c>`;
|
|
1494
1494
|
let o = t.type ?? "text";
|
|
1495
|
-
return o === "number" && typeof a == "number" ? `<c r="${i}"><v>${a}</v></c>` : (o === "date" || o === "datetime") && a instanceof Date ? `<c r="${i}" s="1"><v>${
|
|
1495
|
+
return o === "number" && typeof a == "number" ? `<c r="${i}"><v>${a}</v></c>` : (o === "date" || o === "datetime") && a instanceof Date ? `<c r="${i}" s="1"><v>${xe(a).toFixed(6)}</v></c>` : o === "boolean" ? `<c r="${i}" t="b"><v>${+!!a}</v></c>` : `<c r="${i}" t="str"><v>${F(String(a))}</v></c>`;
|
|
1496
1496
|
});
|
|
1497
1497
|
n.push(`<row r="${r + 2}">${i.join("")}</row>`);
|
|
1498
1498
|
}), `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
|
|
@@ -1500,54 +1500,54 @@ function Ee(e, t) {
|
|
|
1500
1500
|
<sheetData>${n.join("")}</sheetData>
|
|
1501
1501
|
</worksheet>`;
|
|
1502
1502
|
}
|
|
1503
|
-
function De(e, t) {
|
|
1504
|
-
return ge(R(e, t));
|
|
1505
|
-
}
|
|
1506
1503
|
function Oe(e, t) {
|
|
1507
|
-
return _e(
|
|
1504
|
+
return _e(L(e, t));
|
|
1505
|
+
}
|
|
1506
|
+
function ke(e, t) {
|
|
1507
|
+
return ve(L(e, t));
|
|
1508
1508
|
}
|
|
1509
|
-
function
|
|
1510
|
-
let n =
|
|
1509
|
+
function L(e, t) {
|
|
1510
|
+
let n = De(e, t);
|
|
1511
1511
|
return [
|
|
1512
1512
|
{
|
|
1513
1513
|
name: "[Content_Types].xml",
|
|
1514
|
-
data:
|
|
1514
|
+
data: M.encode(Se)
|
|
1515
1515
|
},
|
|
1516
1516
|
{
|
|
1517
1517
|
name: "_rels/.rels",
|
|
1518
|
-
data:
|
|
1518
|
+
data: M.encode(Ce)
|
|
1519
1519
|
},
|
|
1520
1520
|
{
|
|
1521
1521
|
name: "xl/workbook.xml",
|
|
1522
|
-
data:
|
|
1522
|
+
data: M.encode(we)
|
|
1523
1523
|
},
|
|
1524
1524
|
{
|
|
1525
1525
|
name: "xl/_rels/workbook.xml.rels",
|
|
1526
|
-
data:
|
|
1526
|
+
data: M.encode(Te)
|
|
1527
1527
|
},
|
|
1528
1528
|
{
|
|
1529
1529
|
name: "xl/worksheets/sheet1.xml",
|
|
1530
|
-
data:
|
|
1530
|
+
data: M.encode(n)
|
|
1531
1531
|
},
|
|
1532
1532
|
{
|
|
1533
1533
|
name: "xl/styles.xml",
|
|
1534
|
-
data:
|
|
1534
|
+
data: M.encode(Ee)
|
|
1535
1535
|
}
|
|
1536
1536
|
];
|
|
1537
1537
|
}
|
|
1538
1538
|
//#endregion
|
|
1539
1539
|
//#region src/export/export.ts
|
|
1540
|
-
function
|
|
1540
|
+
function R(e, t, n) {
|
|
1541
1541
|
switch (n) {
|
|
1542
1542
|
case "csv": return B(e, t, ",");
|
|
1543
1543
|
case "tsv": return B(e, t, " ");
|
|
1544
1544
|
case "json": return je(e, t);
|
|
1545
|
-
case "xlsx": return
|
|
1545
|
+
case "xlsx": return Oe(e, t);
|
|
1546
1546
|
}
|
|
1547
1547
|
}
|
|
1548
|
-
async function
|
|
1549
|
-
let r = n === "xlsx" ? await
|
|
1550
|
-
return new Blob([r], { type:
|
|
1548
|
+
async function z(e, t, n) {
|
|
1549
|
+
let r = n === "xlsx" ? await ke(e, t) : R(e, t, n);
|
|
1550
|
+
return new Blob([r], { type: Pe(n) });
|
|
1551
1551
|
}
|
|
1552
1552
|
function Ae(e, t) {
|
|
1553
1553
|
return e == null ? "" : (t.type === "date" || t.type === "datetime") && e instanceof Date ? e.toISOString() : String(e);
|
|
@@ -1569,27 +1569,27 @@ function je(e, t) {
|
|
|
1569
1569
|
});
|
|
1570
1570
|
return JSON.stringify(n, null, 2);
|
|
1571
1571
|
}
|
|
1572
|
-
function
|
|
1572
|
+
function H(e, t) {
|
|
1573
1573
|
let n = URL.createObjectURL(e), r = document.createElement("a");
|
|
1574
1574
|
r.href = n, r.download = t, r.style.display = "none", document.body.appendChild(r), r.click(), document.body.removeChild(r), setTimeout(() => URL.revokeObjectURL(n), 100);
|
|
1575
1575
|
}
|
|
1576
|
-
var
|
|
1576
|
+
var Me = {
|
|
1577
1577
|
csv: "text/csv;charset=utf-8",
|
|
1578
1578
|
tsv: "text/tab-separated-values;charset=utf-8",
|
|
1579
1579
|
json: "application/json;charset=utf-8",
|
|
1580
1580
|
xlsx: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
|
|
1581
|
-
},
|
|
1581
|
+
}, Ne = {
|
|
1582
1582
|
csv: ".csv",
|
|
1583
1583
|
tsv: ".tsv",
|
|
1584
1584
|
json: ".json",
|
|
1585
1585
|
xlsx: ".xlsx"
|
|
1586
1586
|
};
|
|
1587
|
+
function Pe(e) {
|
|
1588
|
+
return Me[e];
|
|
1589
|
+
}
|
|
1587
1590
|
function Fe(e) {
|
|
1588
1591
|
return Ne[e];
|
|
1589
1592
|
}
|
|
1590
|
-
function H(e) {
|
|
1591
|
-
return Pe[e];
|
|
1592
|
-
}
|
|
1593
1593
|
//#endregion
|
|
1594
1594
|
//#region src/export/xlsx-reader.ts
|
|
1595
1595
|
function Ie(e) {
|
|
@@ -1764,7 +1764,7 @@ var K = {
|
|
|
1764
1764
|
lte: "≤"
|
|
1765
1765
|
}, q = 120, J = 40, Y = 20, X = 32, Z = 5, Ze = 200, Q = class extends r {
|
|
1766
1766
|
constructor(...e) {
|
|
1767
|
-
super(...e), this.columns = [], this._data = [], this._inUndoRedo = !1, this.clearUndoOnDataChange = !1, this.clearSelectionOnDataChange = !1, this.rowKey = "_id", this._rowHeightFromCss = X, this._targetFloor = 0, this.showRowNumbers = !1, this.theme = void 0, this.maxRows = 0, this.editable = !0, this.showFilters = !1, this.showContextMenu = !1, this.frozenRows = 0, this.emptyMessage = "", this.noMatchingMessage = "", this.error = null, this.loading = !1, this.importEnabled = !1, this.selectable = !1, this.dataMode = "client", this.footerData = null, this.stylesheets = [], this._scrollTop = 0, this._scrollLeft = 0, this._viewportHeight = 0, this._viewportWidth = 0, this._colLeftOffsets = [], this._totalRowWidth = 0, this._baseStyleSheets = [], this._activeCell = null, this._headerCol = null, this._focusedCellEl = null, this._editingCell = null, this._sortCriteria = [], this._selection = new ce(), this._editing = new
|
|
1767
|
+
super(...e), this.columns = [], this._data = [], this._inUndoRedo = !1, this.clearUndoOnDataChange = !1, this.clearSelectionOnDataChange = !1, this.rowKey = "_id", this._rowHeightFromCss = X, this._targetFloor = 0, this.showRowNumbers = !1, this.theme = void 0, this.maxRows = 0, this.editable = !0, this.showFilters = !1, this.showContextMenu = !1, this.frozenRows = 0, this.emptyMessage = "", this.noMatchingMessage = "", this.error = null, this.loading = !1, this.importEnabled = !1, this.selectable = !1, this.dataMode = "client", this.footerData = null, this.stylesheets = [], this._scrollTop = 0, this._scrollLeft = 0, this._viewportHeight = 0, this._viewportWidth = 0, this._colLeftOffsets = [], this._totalRowWidth = 0, this._baseStyleSheets = [], this._activeCell = null, this._headerCol = null, this._focusedCellEl = null, this._editingCell = null, this._sortCriteria = [], this._selection = new ce(), this._editing = new le(), this._rowSelection = new O(), this._undo = new k(), this._filters = [], this._filteredIndices = [], this._sortedIndices = [], this._openFilterKey = null, this._rowSelectionVersion = 0, this._lastCheckboxRowId = null, this._unkeyedIds = /* @__PURE__ */ new WeakMap(), this._unkeyedSeq = 0, this._visibleIdsCache = null, this._checkboxShiftPending = !1, this._autocompleteState = null, this._headerMenu = null, this._bodyContextMenu = null, this._commentPopup = null, this._viewDirty = !0, this._isDragging = !1, this._wasDrag = !1, this._resizing = null, this._resizeCleanup = null, this._wasHeaderDrag = !1, this._wasRowDrag = !1, this._colDrag = null, this._colDragIndicatorLeft = null, this._fillDrag = null, this._rowDrag = null, this._rowDragIndicatorY = null, this._findState = null, this._columnWidths = /* @__PURE__ */ new Map(), this._hostResizeObserver = null, this._comments = /* @__PURE__ */ new Map(), this._isDragOver = !1, this._editorMoving = !1, this._onEditorBlur = (e) => {
|
|
1768
1768
|
!this._editorMoving && e.currentTarget?.isConnected && this._commitEdit();
|
|
1769
1769
|
}, this._warnedUnconstrained = !1, this._onHostFocus = (e) => {
|
|
1770
1770
|
e.composedPath()[0] !== this || this._activeCell || this._headerCol !== null || this.visibleColumns.length !== 0 && this.matches(":focus-visible") && (this._visibleRowCount > 0 ? (this._selection.setActive(0, 0), this._syncActiveCell()) : this._headerCol = 0);
|
|
@@ -1841,6 +1841,9 @@ var K = {
|
|
|
1841
1841
|
get sortCriteria() {
|
|
1842
1842
|
return [...this._sortCriteria];
|
|
1843
1843
|
}
|
|
1844
|
+
set sortCriteria(e) {
|
|
1845
|
+
this._sortCriteria = [...e ?? []], this.dataMode !== "server" && this._recomputeView(), this.requestUpdate();
|
|
1846
|
+
}
|
|
1844
1847
|
get filteredRowCount() {
|
|
1845
1848
|
return this._filteredIndices.length;
|
|
1846
1849
|
}
|
|
@@ -2165,19 +2168,23 @@ var K = {
|
|
|
2165
2168
|
}
|
|
2166
2169
|
exportToString(e, t) {
|
|
2167
2170
|
let n = this._exportSlice(t);
|
|
2168
|
-
return n ?
|
|
2171
|
+
return n ? R(n.rows, n.cols, e) : "";
|
|
2169
2172
|
}
|
|
2170
2173
|
async exportToBlob(e, t) {
|
|
2171
2174
|
let n = this._exportSlice(t) ?? {
|
|
2172
2175
|
rows: [],
|
|
2173
2176
|
cols: []
|
|
2174
2177
|
};
|
|
2175
|
-
return
|
|
2178
|
+
return z(n.rows, n.cols, e);
|
|
2176
2179
|
}
|
|
2177
|
-
async exportToFile(e, t) {
|
|
2178
|
-
|
|
2180
|
+
async exportToFile(e, t, n) {
|
|
2181
|
+
H(await this.exportToBlob(e, n), t ?? `export${Fe(e)}`);
|
|
2179
2182
|
}
|
|
2180
2183
|
_exportSlice(e) {
|
|
2184
|
+
if (e && "rows" in e && e.rows) return {
|
|
2185
|
+
rows: e.rows,
|
|
2186
|
+
cols: this.visibleColumns
|
|
2187
|
+
};
|
|
2181
2188
|
if (e?.selectionOnly) {
|
|
2182
2189
|
let e = this._selection.getEffectiveRange();
|
|
2183
2190
|
if (!e) return null;
|
|
@@ -2266,7 +2273,7 @@ var K = {
|
|
|
2266
2273
|
let a = t.get(e);
|
|
2267
2274
|
if (!a) return;
|
|
2268
2275
|
let o = this.columns.find((e) => e.key === a);
|
|
2269
|
-
r[a] = o ?
|
|
2276
|
+
r[a] = o ? A(n[i] ?? "", o) : n[i] ?? null;
|
|
2270
2277
|
}), r;
|
|
2271
2278
|
}), r = [...this.data];
|
|
2272
2279
|
this.data = n, this._undo.push({
|
|
@@ -2287,7 +2294,7 @@ var K = {
|
|
|
2287
2294
|
let a = n.get(t);
|
|
2288
2295
|
if (!a) return;
|
|
2289
2296
|
let o = this.columns.find((e) => e.key === a);
|
|
2290
|
-
r[a] = o ?
|
|
2297
|
+
r[a] = o ? A(e[i] ?? "", o) : e[i] ?? null;
|
|
2291
2298
|
}), r;
|
|
2292
2299
|
}), i = [...this.data];
|
|
2293
2300
|
this.data = r, this._undo.push({
|
|
@@ -2436,7 +2443,7 @@ var K = {
|
|
|
2436
2443
|
this._filteredIndices = Array.from({ length: this.data.length }, (e, t) => t), this._sortedIndices = this._filteredIndices;
|
|
2437
2444
|
return;
|
|
2438
2445
|
}
|
|
2439
|
-
if (this._filteredIndices =
|
|
2446
|
+
if (this._filteredIndices = ue(this.data, this._filters, (e, t, n) => {
|
|
2440
2447
|
this._emit("filter-error", {
|
|
2441
2448
|
error: e,
|
|
2442
2449
|
row: t,
|
|
@@ -2633,7 +2640,7 @@ var K = {
|
|
|
2633
2640
|
}
|
|
2634
2641
|
let t = this.shadowRoot?.querySelector(".ft-editor");
|
|
2635
2642
|
if (t) {
|
|
2636
|
-
let n =
|
|
2643
|
+
let n = A(t.value, e);
|
|
2637
2644
|
this._applyEdit(n);
|
|
2638
2645
|
} else this._cancelEdit();
|
|
2639
2646
|
}
|
|
@@ -2957,7 +2964,7 @@ var K = {
|
|
|
2957
2964
|
let e = this._selection.getEffectiveRange();
|
|
2958
2965
|
return e ? {
|
|
2959
2966
|
range: e,
|
|
2960
|
-
text:
|
|
2967
|
+
text: fe(this._sortedIndices.map((e) => this.data[e]), this.visibleColumns, e)
|
|
2961
2968
|
} : null;
|
|
2962
2969
|
}
|
|
2963
2970
|
async _copyFromMenu() {
|
|
@@ -3040,7 +3047,7 @@ var K = {
|
|
|
3040
3047
|
for (let a = 0; a < t[i].length; a++) {
|
|
3041
3048
|
let s = e.col + a;
|
|
3042
3049
|
if (s >= n.length) break;
|
|
3043
|
-
let c = n[s], l = this.data[o][c.key], u =
|
|
3050
|
+
let c = n[s], l = this.data[o][c.key], u = A(t[i][a], c);
|
|
3044
3051
|
this.data[o][c.key] = u, r.push({
|
|
3045
3052
|
row: o,
|
|
3046
3053
|
col: s,
|
|
@@ -3105,7 +3112,7 @@ var K = {
|
|
|
3105
3112
|
for (let r = e.startCol + 1; r <= e.endCol; r++) {
|
|
3106
3113
|
let e = t[r];
|
|
3107
3114
|
if (!e || !this._isCellEditable(e)) continue;
|
|
3108
|
-
let a =
|
|
3115
|
+
let a = A(o == null ? "" : String(o), e);
|
|
3109
3116
|
n.push({
|
|
3110
3117
|
row: i,
|
|
3111
3118
|
key: e.key,
|
|
@@ -3727,7 +3734,7 @@ var K = {
|
|
|
3727
3734
|
</select>
|
|
3728
3735
|
<input class="ft-filter-input ft-num-cond-input" type="text" inputmode="decimal" placeholder=${e("valuePlaceholder")}
|
|
3729
3736
|
aria-label=${e("conditionValue", { n: n === "cond1" ? 1 : 2 })}
|
|
3730
|
-
.value=${r.text ?? (r.value == null ? "" :
|
|
3737
|
+
.value=${r.text ?? (r.value == null ? "" : j(r.value))}
|
|
3731
3738
|
aria-invalid=${r.text && r.value == null ? "true" : "false"}
|
|
3732
3739
|
@input=${(e) => {
|
|
3733
3740
|
let r = e.target.value, i = this._numberFilterState.get(t) ?? this._defaultNumState();
|
|
@@ -4478,7 +4485,7 @@ var K = {
|
|
|
4478
4485
|
let n = e[t.key], r = n == null ? "" : String(n);
|
|
4479
4486
|
if (t.type === "number") return a`
|
|
4480
4487
|
<input class="ft-editor ft-editor-number" type="text" inputmode="decimal" aria-label=${t.label}
|
|
4481
|
-
.value=${typeof n == "number" ?
|
|
4488
|
+
.value=${typeof n == "number" ? j(n) : r}
|
|
4482
4489
|
@keydown=${this._onEditorKeyDown}
|
|
4483
4490
|
@blur=${this._onEditorBlur}>
|
|
4484
4491
|
`;
|
|
@@ -4596,10 +4603,10 @@ G([c({ type: Array })], Q.prototype, "columns", void 0), G([c({
|
|
|
4596
4603
|
})], Q.prototype, "maxUndoSize", null), G([l()], Q.prototype, "_scrollTop", void 0), G([l()], Q.prototype, "_scrollLeft", void 0), G([l()], Q.prototype, "_viewportHeight", void 0), G([l()], Q.prototype, "_viewportWidth", void 0), G([l()], Q.prototype, "_activeCell", void 0), G([l()], Q.prototype, "_headerCol", void 0), G([l()], Q.prototype, "_editingCell", void 0), G([l()], Q.prototype, "_sortCriteria", void 0), G([l()], Q.prototype, "_openFilterKey", void 0), G([l()], Q.prototype, "_rowSelectionVersion", void 0), G([l()], Q.prototype, "_autocompleteState", void 0), G([l()], Q.prototype, "_headerMenu", void 0), G([l()], Q.prototype, "_bodyContextMenu", void 0), G([l()], Q.prototype, "_commentPopup", void 0), G([l()], Q.prototype, "_isDragOver", void 0), Q = G([s("flex-table")], Q);
|
|
4597
4604
|
function Qe(e, t) {
|
|
4598
4605
|
if (t) {
|
|
4599
|
-
let t =
|
|
4606
|
+
let t = me(e);
|
|
4600
4607
|
return /^\d{4}-\d{2}-\d{2} \d{2}:\d{2}$/.test(t) ? t.replace(" ", "T") : void 0;
|
|
4601
4608
|
}
|
|
4602
|
-
let n =
|
|
4609
|
+
let n = pe(e);
|
|
4603
4610
|
return /^\d{4}-\d{2}-\d{2}$/.test(n) ? n : void 0;
|
|
4604
4611
|
}
|
|
4605
4612
|
function $(e) {
|
|
@@ -4610,4 +4617,4 @@ function $(e) {
|
|
|
4610
4617
|
}
|
|
4611
4618
|
}
|
|
4612
4619
|
//#endregion
|
|
4613
|
-
export {
|
|
4620
|
+
export { z as a, D as c, R as i, W as n, k as o, H as r, O as s, Q as t };
|
package/dist/flex-table.d.ts
CHANGED
|
@@ -7,6 +7,17 @@ import type { FilterPredicate } from './core/filtering.js';
|
|
|
7
7
|
import type { ColumnDefinition, DataRow, SelectionMode, DataMode } from './models/types.js';
|
|
8
8
|
import type { FlexTableEventMap } from './events.js';
|
|
9
9
|
import type { TemplateResult } from 'lit';
|
|
10
|
+
/**
|
|
11
|
+
* 표 내보내기의 대상 — 선택 범위(`selectionOnly`) 또는 바깥에서 준 행(`rows`, 예: `await source.fetchAll()`). 둘은
|
|
12
|
+
* 함께 쓰지 않는다(바깥 행에는 표의 선택 범위가 없다).
|
|
13
|
+
*/
|
|
14
|
+
export type TableExportOptions = {
|
|
15
|
+
selectionOnly?: boolean;
|
|
16
|
+
rows?: undefined;
|
|
17
|
+
} | {
|
|
18
|
+
rows: DataRow[];
|
|
19
|
+
selectionOnly?: undefined;
|
|
20
|
+
};
|
|
10
21
|
export declare class FlexTable extends LitElement {
|
|
11
22
|
static styles: import("lit").CSSResult;
|
|
12
23
|
columns: ColumnDefinition[];
|
|
@@ -188,7 +199,14 @@ export declare class FlexTable extends LitElement {
|
|
|
188
199
|
get canRedo(): boolean;
|
|
189
200
|
get activeCell(): CellPosition | null;
|
|
190
201
|
get editingCell(): CellPosition | null;
|
|
202
|
+
/**
|
|
203
|
+
* The active sort — `[{ key, direction }]`, the first is the primary. Setting it shows that sort (the header
|
|
204
|
+
* indicators) and, in client mode, re-sorts; it does not fire `sort-change`, which is the user's act. A data
|
|
205
|
+
* source's `sortCriteria` goes here as is — the initial or restored sort of a server-paged list, the same as
|
|
206
|
+
* `u-rich-table`'s `sortCriteria`.
|
|
207
|
+
*/
|
|
191
208
|
get sortCriteria(): SortCriteria[];
|
|
209
|
+
set sortCriteria(criteria: SortCriteria[]);
|
|
192
210
|
/** Number of rows after filtering (before pagination). */
|
|
193
211
|
get filteredRowCount(): number;
|
|
194
212
|
/**
|
|
@@ -313,23 +331,25 @@ export declare class FlexTable extends LitElement {
|
|
|
313
331
|
* Export table data to string in the specified format. Synchronous — XLSX comes back as an
|
|
314
332
|
* uncompressed workbook; use `exportToBlob` for a compressed one.
|
|
315
333
|
* @param options.selectionOnly - Export only the currently selected range
|
|
334
|
+
* @param options.rows - Export these rows with the table's visible columns instead of the rows it holds —
|
|
335
|
+
* a server-paged table holds one page, so pass `await source.fetchAll()` for the whole result
|
|
316
336
|
*/
|
|
317
|
-
exportToString(format: ExportFormat, options?:
|
|
318
|
-
selectionOnly?: boolean;
|
|
319
|
-
}): string | Uint8Array<ArrayBuffer>;
|
|
337
|
+
exportToString(format: ExportFormat, options?: TableExportOptions): string | Uint8Array<ArrayBuffer>;
|
|
320
338
|
/**
|
|
321
339
|
* Export table data as a `Blob` of the format's MIME type. XLSX is DEFLATE-compressed.
|
|
322
|
-
* @param options
|
|
340
|
+
* @param options - `selectionOnly` or `rows`, as for `exportToString`
|
|
323
341
|
*/
|
|
324
|
-
exportToBlob(format: ExportFormat, options?:
|
|
325
|
-
selectionOnly?: boolean;
|
|
326
|
-
}): Promise<Blob>;
|
|
342
|
+
exportToBlob(format: ExportFormat, options?: TableExportOptions): Promise<Blob>;
|
|
327
343
|
/**
|
|
328
344
|
* Export table data and trigger file download. XLSX is DEFLATE-compressed; the promise settles
|
|
329
345
|
* once the download has been handed to the browser.
|
|
346
|
+
* @param options - `selectionOnly` or `rows`, as for `exportToString`
|
|
347
|
+
*/
|
|
348
|
+
exportToFile(format: ExportFormat, filename?: string, options?: TableExportOptions): Promise<void>;
|
|
349
|
+
/**
|
|
350
|
+
* 내보낼 행·열 — 행을 받았으면 그 행 · 보이는 열(서버 페이지 표가 «조회 결과 전체» 를 내보내는 길 — 열과 형식은 표,
|
|
351
|
+
* 질의는 소스가 안다), 선택만이면 선택 범위(없으면 `null`), 아니면 정렬 순서의 전체 행 · 보이는 열.
|
|
330
352
|
*/
|
|
331
|
-
exportToFile(format: ExportFormat, filename?: string): Promise<void>;
|
|
332
|
-
/** 내보낼 행·열 — 선택만이면 선택 범위(없으면 `null`), 아니면 정렬 순서의 전체 행 · 보이는 열. */
|
|
333
353
|
private _exportSlice;
|
|
334
354
|
/**
|
|
335
355
|
* Set a comment on the cell at the given data index and column key.
|
package/dist/flex-table.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { a as e,
|
|
2
|
-
import { t as
|
|
3
|
-
export {
|
|
1
|
+
import { a as e, c as t, i as n, n as r, o as i, r as a, s as o, t as s } from "./flex-table-BD_T3SqO.js";
|
|
2
|
+
import { t as c } from "./locale-D9g0ksXq.js";
|
|
3
|
+
export { s as FlexTable, o as RowSelectionState, i as UndoStack, a as downloadBlob, r as effectiveAlign, n as exportData, e as exportDataBlob, c as flexTableLocale, t as renderCell };
|
package/dist/index.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { FlexTable } from './flex-table.js';
|
|
2
|
+
export type { TableExportOptions } from './flex-table.js';
|
|
2
3
|
export type { ColumnDefinition, ColumnType, ColumnAlign, DataRow, CellRenderer, CellEditor, CellValidator, SelectionMode, DataMode, CellStyle, ConditionalRule } from './models/types.js';
|
|
3
4
|
export { effectiveAlign } from './models/types.js';
|
|
4
5
|
export type { CellPosition, CellRange } from './core/selection.js';
|
|
@@ -9,7 +10,7 @@ export { RowSelectionState } from './core/row-selection.js';
|
|
|
9
10
|
export { UndoStack } from './core/undo.js';
|
|
10
11
|
export type { UndoAction } from './core/undo.js';
|
|
11
12
|
export type { ExportFormat } from './export/export.js';
|
|
12
|
-
export { exportData } from './export/export.js';
|
|
13
|
+
export { exportData, exportDataBlob, downloadBlob } from './export/export.js';
|
|
13
14
|
export { renderCell } from './renderers/cell-renderer.js';
|
|
14
15
|
export { flexTableLocale } from './locale.js';
|
|
15
16
|
export type { FlexTableMessageKey } from './locale.js';
|
|
@@ -72,7 +72,8 @@ t.register("en", {
|
|
|
72
72
|
notADateTime: "Enter a date and time as YYYY-MM-DD HH:mm",
|
|
73
73
|
notInList: "Value must be from the existing list",
|
|
74
74
|
requestFailed: "Request failed ({status})",
|
|
75
|
-
networkFailed: "Could not reach the server."
|
|
75
|
+
networkFailed: "Could not reach the server.",
|
|
76
|
+
tooManyRows: "More than {maxRows} rows match — narrow the search or filter first."
|
|
76
77
|
}), t.register("ko", {
|
|
77
78
|
showHiddenColumns: "숨긴 열 보기",
|
|
78
79
|
columnMenu: "열 메뉴",
|
|
@@ -144,7 +145,8 @@ t.register("en", {
|
|
|
144
145
|
notADateTime: "날짜와 시간을 YYYY-MM-DD HH:mm 으로 입력하세요",
|
|
145
146
|
notInList: "목록에 있는 값이어야 합니다",
|
|
146
147
|
requestFailed: "요청이 실패했습니다 ({status})",
|
|
147
|
-
networkFailed: "서버에 연결하지 못했습니다."
|
|
148
|
+
networkFailed: "서버에 연결하지 못했습니다.",
|
|
149
|
+
tooManyRows: "조건에 맞는 행이 {maxRows}개를 넘습니다 — 검색이나 필터로 먼저 좁혀 주세요."
|
|
148
150
|
});
|
|
149
151
|
var n = (e, n) => t.text(e, n);
|
|
150
152
|
//#endregion
|
package/dist/locale.d.ts
CHANGED
|
@@ -25,7 +25,7 @@
|
|
|
25
25
|
* (아이콘 자리의 글리프)는 어느 로케일에서도 같은 것을 뜻하며, 번역하면 오히려 읽히지 않는다.
|
|
26
26
|
* 그 판단은 «번역하지 않기로 한 것»이지 «빠뜨린 것»이 아니다.
|
|
27
27
|
*/
|
|
28
|
-
export type FlexTableMessageKey = 'showHiddenColumns' | 'columnMenu' | 'cellActions' | 'noColumnsDefined' | 'addCommentPlaceholder' | 'cancel' | 'save' | 'noData' | 'noMatchingData' | 'clear' | 'blankCells' | 'emptyOnly' | 'nonEmptyOnly' | 'blankAll' | 'all' | 'contains' | 'startsWith' | 'endsWith' | 'wildcard' | 'searchPlaceholder' | 'valuePlaceholder' | 'fromPlaceholder' | 'toPlaceholder' | 'findPlaceholder' | 'findPrevious' | 'findNext' | 'matchCase' | 'wholeCell' | 'closeFind' | 'findNoResults' | 'replaceWithPlaceholder' | 'replace' | 'replaceAll' | 'findInput' | 'replaceInput' | 'filterFor' | 'filterMatchMode' | 'filterText' | 'conditionOperator' | 'conditionValue' | 'conditionJoin' | 'sortAscending' | 'sortDescending' | 'filter' | 'clearFilter' | 'hideColumn' | 'showColumn' | 'autoFitWidth' | 'wider' | 'narrower' | 'columnMenuFor' | 'columnMenuRegion' | 'copy' | 'insertRowAbove' | 'insertRowBelow' | 'deleteRow' | 'selectRow' | 'selectAllRows' | 'filterByThisValue' | 'addComment' | 'editComment' | 'deleteComment' | 'booleanTrue' | 'booleanFalse' | 'dropFileToImport' | 'notANumber' | 'notADate' | 'notADateTime' | 'notInList' | 'requestFailed' | 'networkFailed';
|
|
28
|
+
export type FlexTableMessageKey = 'showHiddenColumns' | 'columnMenu' | 'cellActions' | 'noColumnsDefined' | 'addCommentPlaceholder' | 'cancel' | 'save' | 'noData' | 'noMatchingData' | 'clear' | 'blankCells' | 'emptyOnly' | 'nonEmptyOnly' | 'blankAll' | 'all' | 'contains' | 'startsWith' | 'endsWith' | 'wildcard' | 'searchPlaceholder' | 'valuePlaceholder' | 'fromPlaceholder' | 'toPlaceholder' | 'findPlaceholder' | 'findPrevious' | 'findNext' | 'matchCase' | 'wholeCell' | 'closeFind' | 'findNoResults' | 'replaceWithPlaceholder' | 'replace' | 'replaceAll' | 'findInput' | 'replaceInput' | 'filterFor' | 'filterMatchMode' | 'filterText' | 'conditionOperator' | 'conditionValue' | 'conditionJoin' | 'sortAscending' | 'sortDescending' | 'filter' | 'clearFilter' | 'hideColumn' | 'showColumn' | 'autoFitWidth' | 'wider' | 'narrower' | 'columnMenuFor' | 'columnMenuRegion' | 'copy' | 'insertRowAbove' | 'insertRowBelow' | 'deleteRow' | 'selectRow' | 'selectAllRows' | 'filterByThisValue' | 'addComment' | 'editComment' | 'deleteComment' | 'booleanTrue' | 'booleanFalse' | 'dropFileToImport' | 'notANumber' | 'notADate' | 'notADateTime' | 'notInList' | 'requestFailed' | 'networkFailed' | 'tooManyRows';
|
|
29
29
|
/** 이 패키지의 chrome 문자열 묶음. 소비자가 `register()` 로 언어를 더하거나 문구를 덮을 수 있다. */
|
|
30
30
|
export declare const flexTableLocale: import("@iyulab/components/dist/utilities/Locale.js").LocaleNamespace<FlexTableMessageKey>;
|
|
31
31
|
/** 짧은 조회 별칭 — 렌더 코드가 읽히게 유지한다. */
|
package/dist/odata/index.d.ts
CHANGED
|
@@ -3,3 +3,7 @@ export type { ODataQueryState } from './query.js';
|
|
|
3
3
|
export { createODataSource } from './source.js';
|
|
4
4
|
export type { ODataSource, ODataSourceOptions, ODataSourceState } from './source.js';
|
|
5
5
|
export { ODataSourceController } from './controller.js';
|
|
6
|
+
export { DEFAULT_MAX_ROWS } from '../core/fetch-all.js';
|
|
7
|
+
export type { FetchAllOptions } from '../core/fetch-all.js';
|
|
8
|
+
export { SourceRequestError, RowLimitError } from '../core/source-error.js';
|
|
9
|
+
export type { SourceError, SourceErrorDetail } from '../core/source-error.js';
|
package/dist/odata/index.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { t as
|
|
1
|
+
import { c as e, l as t, n, r, s as i, t as a } from "../fetch-all-J37bOtgc.js";
|
|
2
|
+
import { t as o } from "../source-DNPtWmC3.js";
|
|
3
3
|
//#region src/odata/controller.ts
|
|
4
|
-
var
|
|
4
|
+
var s = class {
|
|
5
5
|
constructor(e, t, n = {}) {
|
|
6
|
-
this.host = e, this.source = typeof t == "string" ?
|
|
6
|
+
this.host = e, this.source = typeof t == "string" ? o(t, n) : t, e.addController(this);
|
|
7
7
|
}
|
|
8
8
|
get state() {
|
|
9
9
|
return this.source.getState();
|
|
@@ -16,4 +16,4 @@ var i = class {
|
|
|
16
16
|
}
|
|
17
17
|
};
|
|
18
18
|
//#endregion
|
|
19
|
-
export {
|
|
19
|
+
export { a as DEFAULT_MAX_ROWS, s as ODataSourceController, n as RowLimitError, r as SourceRequestError, i as buildODataQuery, e as buildSearchExpression, o as createODataSource, t as parseOrderBy };
|