@updog/data-editor-wc 0.1.50 → 0.1.51
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/index.css +1 -1
- package/index.d.ts +6 -0
- package/index.js +878 -623
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -8413,6 +8413,7 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
|
|
|
8413
8413
|
steps: {
|
|
8414
8414
|
selectFiles: "Select files",
|
|
8415
8415
|
sheetSelection: "Select sheet",
|
|
8416
|
+
headerSelection: "Header selection",
|
|
8416
8417
|
matchColumns: "Match columns",
|
|
8417
8418
|
matchValues: "Match values",
|
|
8418
8419
|
primaryKey: "Primary key"
|
|
@@ -8432,12 +8433,15 @@ var e = Object.create, t = Object.defineProperty, n = Object.getOwnPropertyDescr
|
|
|
8432
8433
|
emptyData: "The source returned no data",
|
|
8433
8434
|
fetchError: "Failed to load data"
|
|
8434
8435
|
},
|
|
8436
|
+
headerSelection: { noHeaderLabel: "My data has no header row" },
|
|
8435
8437
|
matchColumns: {
|
|
8436
8438
|
banner: "Some columns could not be automatically matched",
|
|
8437
8439
|
importedColumns: "Imported columns",
|
|
8438
8440
|
matchedCount: "{{matched}}/{{total}} matched",
|
|
8439
8441
|
targetColumns: "Target columns",
|
|
8440
8442
|
selectColumnPlaceholder: "Select column",
|
|
8443
|
+
syntheticColumn: "C{{index}}",
|
|
8444
|
+
syntheticColumnValue: "C{{index}}: {{value}}",
|
|
8441
8445
|
bestMatch: "Best match",
|
|
8442
8446
|
createColumn: "Create column",
|
|
8443
8447
|
createColumnNameLabel: "Column name",
|
|
@@ -33311,47 +33315,51 @@ function $_(e, t, n) {
|
|
|
33311
33315
|
}
|
|
33312
33316
|
//#endregion
|
|
33313
33317
|
//#region src/components/PreviewTable/index.tsx
|
|
33314
|
-
var ev = 15, tv = { width: 1 }, nv = { height: 1 }, rv = ({ headers: e, rows: t, lockedColumns: n, displayRows: r = ev, blur: i = !0, scrollbars: a = !0,
|
|
33315
|
-
let
|
|
33318
|
+
var ev = 15, tv = { width: 1 }, nv = { height: 1 }, rv = ({ headers: e, rows: t, lockedColumns: n, displayRows: r = ev, blur: i = !0, scrollbars: a = !0, selectedRow: o, onSelectRow: s, className: c }) => {
|
|
33319
|
+
let l = e.length, u = Array.from({ length: r }, (e, n) => t[n]), d = a === !0, f = a === !0 || a === "empty", p = (0, y.useRef)(null), m = (0, y.useRef)(null), h = (0, y.useRef)(null), g = (0, y.useRef)(null), _ = (0, y.useRef)(null), v = (0, y.useRef)(null), [b, x] = (0, y.useState)(!1), [S, C] = (0, y.useState)(!1);
|
|
33316
33320
|
(0, y.useEffect)(() => {
|
|
33317
|
-
if (!
|
|
33318
|
-
let e =
|
|
33321
|
+
if (!d) return;
|
|
33322
|
+
let e = p.current, t = h.current, n = g.current, r = _.current, i = v.current;
|
|
33319
33323
|
if (!e) return;
|
|
33320
33324
|
let a = () => {
|
|
33321
33325
|
let a = e.scrollHeight - e.clientHeight, o = e.scrollWidth - e.clientWidth;
|
|
33322
|
-
t && r && (r.style.height = a + t.clientHeight + "px"), n && i && (i.style.width = o + n.clientWidth + "px"),
|
|
33326
|
+
t && r && (r.style.height = a + t.clientHeight + "px"), n && i && (i.style.width = o + n.clientWidth + "px"), C(a > 0), x(o > 0);
|
|
33323
33327
|
}, o = new ResizeObserver(a);
|
|
33324
|
-
o.observe(e),
|
|
33328
|
+
o.observe(e), m.current && o.observe(m.current), a();
|
|
33325
33329
|
let s = (e) => {
|
|
33326
33330
|
e.preventDefault(), t && (t.scrollTop += e.deltaY), n && (n.scrollLeft += e.deltaX);
|
|
33327
33331
|
};
|
|
33328
33332
|
e.addEventListener("wheel", s, { passive: !1 });
|
|
33329
33333
|
let c = () => {
|
|
33330
33334
|
t && (e.scrollTop = t.scrollTop);
|
|
33331
|
-
},
|
|
33335
|
+
}, l = () => {
|
|
33332
33336
|
n && (e.scrollLeft = n.scrollLeft);
|
|
33333
33337
|
};
|
|
33334
|
-
return t?.addEventListener("scroll", c, { passive: !0 }), n?.addEventListener("scroll",
|
|
33335
|
-
o.disconnect(), e.removeEventListener("wheel", s), t?.removeEventListener("scroll", c), n?.removeEventListener("scroll",
|
|
33338
|
+
return t?.addEventListener("scroll", c, { passive: !0 }), n?.addEventListener("scroll", l, { passive: !0 }), () => {
|
|
33339
|
+
o.disconnect(), e.removeEventListener("wheel", s), t?.removeEventListener("scroll", c), n?.removeEventListener("scroll", l);
|
|
33336
33340
|
};
|
|
33337
|
-
}, [
|
|
33338
|
-
let
|
|
33341
|
+
}, [d]);
|
|
33342
|
+
let w = (0, y.useCallback)((e) => {
|
|
33343
|
+
s?.(Number(e.currentTarget.dataset.rowIndex));
|
|
33344
|
+
}, [s]), T = (0, y.useCallback)((e) => {
|
|
33345
|
+
e.key !== "Enter" && e.key !== " " || (e.preventDefault(), s?.(Number(e.currentTarget.dataset.rowIndex)));
|
|
33346
|
+
}, [s]), E = (0, y.useMemo)(() => ({ gridTemplateColumns: `var(--marker-width) repeat(${Math.max(l, 1)}, auto)` }), [l]);
|
|
33339
33347
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
33340
|
-
className: N("updog__preview-table", a === !1 ? "updog__preview-table--scrollbars-none" : a === "empty" ? "updog__preview-table--scrollbars-empty" : "updog__preview-table--scrollbars-show",
|
|
33348
|
+
className: N("updog__preview-table", a === !1 ? "updog__preview-table--scrollbars-none" : a === "empty" ? "updog__preview-table--scrollbars-empty" : "updog__preview-table--scrollbars-show", d && !b && "updog__preview-table--no-hscroll", d && !S && "updog__preview-table--no-vscroll", c),
|
|
33341
33349
|
children: [
|
|
33342
33350
|
/* @__PURE__ */ (0, O.jsx)("div", {
|
|
33343
33351
|
className: "updog__preview-table__canvas-wrap",
|
|
33344
33352
|
children: /* @__PURE__ */ (0, O.jsx)("div", {
|
|
33345
33353
|
className: "updog__preview-table__scroll",
|
|
33346
|
-
ref:
|
|
33354
|
+
ref: p,
|
|
33347
33355
|
children: /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
33348
33356
|
className: "updog__preview-table__grid",
|
|
33349
|
-
style:
|
|
33350
|
-
ref:
|
|
33357
|
+
style: E,
|
|
33358
|
+
ref: m,
|
|
33351
33359
|
children: [
|
|
33352
33360
|
/* @__PURE__ */ (0, O.jsx)("div", { className: "updog__preview-table-marker" }),
|
|
33353
|
-
|
|
33354
|
-
className: N("updog__preview-table-th", t ===
|
|
33361
|
+
l === 0 ? /* @__PURE__ */ (0, O.jsx)("div", { className: N("updog__preview-table-th", "updog__preview-table-cell--last-col") }) : e.map((e, t) => /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
33362
|
+
className: N("updog__preview-table-th", t === l - 1 && "updog__preview-table-cell--last-col"),
|
|
33355
33363
|
children: [/* @__PURE__ */ (0, O.jsx)("span", {
|
|
33356
33364
|
className: "updog__preview-table-th__label",
|
|
33357
33365
|
children: e
|
|
@@ -33360,33 +33368,45 @@ var ev = 15, tv = { width: 1 }, nv = { height: 1 }, rv = ({ headers: e, rows: t,
|
|
|
33360
33368
|
className: "updog__preview-table-th__lock-icon"
|
|
33361
33369
|
})]
|
|
33362
33370
|
}, t)),
|
|
33363
|
-
|
|
33364
|
-
|
|
33365
|
-
|
|
33366
|
-
|
|
33367
|
-
|
|
33368
|
-
|
|
33369
|
-
|
|
33371
|
+
u.map((t, n) => {
|
|
33372
|
+
let i = n === r - 1, a = !!s && t !== void 0, c = o === n;
|
|
33373
|
+
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
33374
|
+
className: N("updog__preview-table-row", a && "updog__preview-table-row--interactive", c && "updog__preview-table-row--selected"),
|
|
33375
|
+
"data-row-index": n,
|
|
33376
|
+
role: a ? "row" : void 0,
|
|
33377
|
+
tabIndex: a ? 0 : void 0,
|
|
33378
|
+
"aria-selected": a ? c : void 0,
|
|
33379
|
+
onClick: a ? w : void 0,
|
|
33380
|
+
onKeyDown: a ? T : void 0,
|
|
33381
|
+
children: [/* @__PURE__ */ (0, O.jsx)("div", {
|
|
33382
|
+
className: N("updog__preview-table-marker", i && "updog__preview-table-cell--last-row"),
|
|
33383
|
+
children: n + 1
|
|
33384
|
+
}), l === 0 ? /* @__PURE__ */ (0, O.jsx)("div", { className: N("updog__preview-table-td", "updog__preview-table-cell--last-col", i && "updog__preview-table-cell--last-row") }) : e.map((e, n) => /* @__PURE__ */ (0, O.jsx)("div", {
|
|
33385
|
+
className: N("updog__preview-table-td", n === l - 1 && "updog__preview-table-cell--last-col", i && "updog__preview-table-cell--last-row"),
|
|
33386
|
+
children: t?.[n] ?? ""
|
|
33387
|
+
}, n))]
|
|
33388
|
+
}, n);
|
|
33389
|
+
})
|
|
33370
33390
|
]
|
|
33371
33391
|
})
|
|
33372
33392
|
})
|
|
33373
33393
|
}),
|
|
33374
|
-
|
|
33394
|
+
f && /* @__PURE__ */ (0, O.jsxs)(O.Fragment, { children: [
|
|
33375
33395
|
/* @__PURE__ */ (0, O.jsx)("div", {
|
|
33376
33396
|
className: "updog__preview-table__vtrack",
|
|
33377
|
-
ref:
|
|
33397
|
+
ref: h,
|
|
33378
33398
|
tabIndex: -1,
|
|
33379
33399
|
children: /* @__PURE__ */ (0, O.jsx)("div", {
|
|
33380
|
-
ref:
|
|
33400
|
+
ref: _,
|
|
33381
33401
|
style: tv
|
|
33382
33402
|
})
|
|
33383
33403
|
}),
|
|
33384
33404
|
/* @__PURE__ */ (0, O.jsx)("div", {
|
|
33385
33405
|
className: "updog__preview-table__htrack",
|
|
33386
|
-
ref:
|
|
33406
|
+
ref: g,
|
|
33387
33407
|
tabIndex: -1,
|
|
33388
33408
|
children: /* @__PURE__ */ (0, O.jsx)("div", {
|
|
33389
|
-
ref:
|
|
33409
|
+
ref: v,
|
|
33390
33410
|
style: nv
|
|
33391
33411
|
})
|
|
33392
33412
|
}),
|
|
@@ -45799,7 +45819,7 @@ var gj = ({ text: e, onSelect: t }) => /* @__PURE__ */ (0, O.jsx)(ot, {
|
|
|
45799
45819
|
return this.state.hasError ? /* @__PURE__ */ (0, O.jsx)(Dj, { error: Oj }) : this.props.children;
|
|
45800
45820
|
}
|
|
45801
45821
|
}, Aj = ({ leftSlot: e }) => {
|
|
45802
|
-
let { variant: t, setShowUploader: n } = th(), { t: r } = j(), { isFirstStep: i, isLastStep: a, nextStep: o, prevStep: s, onImport: c, parsedCsv: l, xlsxFile: u, isParsing: d, isImporting: f, steps: p, activeStepIndex: m, selectedSheet: h, handleSheetConfirmed: g, remoteSourceLoading: _ } =
|
|
45822
|
+
let { variant: t, setShowUploader: n } = th(), { t: r } = j(), { isFirstStep: i, isLastStep: a, nextStep: o, prevStep: s, onImport: c, parsedCsv: l, xlsxFile: u, isParsing: d, isImporting: f, steps: p, activeStepIndex: m, selectedSheet: h, handleSheetConfirmed: g, remoteSourceLoading: _ } = XN(), v = i && t === "editor", b = (0, y.useCallback)(() => {
|
|
45803
45823
|
n(!1);
|
|
45804
45824
|
}, [n]), x = p[m]?.id === "sheet-selection", S = (0, y.useCallback)(() => {
|
|
45805
45825
|
a ? c() : x ? g() : o();
|
|
@@ -46568,15 +46588,17 @@ var gj = ({ text: e, onSelect: t }) => /* @__PURE__ */ (0, O.jsx)(ot, {
|
|
|
46568
46588
|
}
|
|
46569
46589
|
return i;
|
|
46570
46590
|
}, Qj = () => {
|
|
46571
|
-
let { columns: e, enableCreateColumn: t, synonyms: n } = th(), { t: r } = j(), {
|
|
46572
|
-
|
|
46573
|
-
|
|
46591
|
+
let { columns: e, enableCreateColumn: t, synonyms: n } = th(), { t: r } = j(), { headers: i, columnMapping: a, updateColumnMapping: o, pendingColumns: s, setPendingColumns: c } = XN(), [l, u] = (0, y.useState)(null), d = (0, y.useRef)(null), f = (0, y.useMemo)(() => Zj(i, e, n), [
|
|
46592
|
+
i,
|
|
46593
|
+
e,
|
|
46594
|
+
n
|
|
46595
|
+
]), p = (0, y.useCallback)((e, t) => {
|
|
46574
46596
|
if (t === "action:create") {
|
|
46575
46597
|
d.current = e, u({ title: e });
|
|
46576
46598
|
return;
|
|
46577
46599
|
}
|
|
46578
46600
|
o(e, t);
|
|
46579
|
-
}, [o]),
|
|
46601
|
+
}, [o]), m = (0, y.useCallback)((e) => {
|
|
46580
46602
|
if (d.current === null) return;
|
|
46581
46603
|
let t = Math.random().toString(36).slice(2, 7), n = `${ad}${e.title}-${t}`;
|
|
46582
46604
|
c((t) => [...t, {
|
|
@@ -46584,59 +46606,64 @@ var gj = ({ text: e, onSelect: t }) => /* @__PURE__ */ (0, O.jsx)(ot, {
|
|
|
46584
46606
|
id: n,
|
|
46585
46607
|
size: 150
|
|
46586
46608
|
}]), o(d.current, n), d.current = null, u(null);
|
|
46587
|
-
}, [o, c]),
|
|
46609
|
+
}, [o, c]), h = (0, y.useCallback)(() => {
|
|
46588
46610
|
d.current = null, u(null);
|
|
46589
|
-
}, []),
|
|
46611
|
+
}, []), g = (0, y.useMemo)(() => [...e.map((e) => e.title), ...s.map((e) => e.title)], [e, s]), _ = (0, y.useMemo)(() => {
|
|
46590
46612
|
let n = {
|
|
46591
46613
|
text: r("dataEditor.uploader.matchColumns.bestMatch"),
|
|
46592
46614
|
color: "green"
|
|
46593
|
-
},
|
|
46615
|
+
}, a = {
|
|
46594
46616
|
text: r("dataEditor.uploader.matchColumns.newColumnTag"),
|
|
46595
46617
|
color: "blue"
|
|
46596
|
-
},
|
|
46597
|
-
return Object.fromEntries(
|
|
46598
|
-
let
|
|
46618
|
+
}, o = r("dataEditor.uploader.matchColumns.createColumn");
|
|
46619
|
+
return Object.fromEntries(i.map((r) => {
|
|
46620
|
+
let i = f[r], c = e.map((e) => ({
|
|
46599
46621
|
id: e.id,
|
|
46600
46622
|
text: e.title,
|
|
46601
|
-
...e.id ===
|
|
46623
|
+
...e.id === i && { tag: n }
|
|
46602
46624
|
}));
|
|
46603
46625
|
for (let e of s) c.push({
|
|
46604
46626
|
id: e.id,
|
|
46605
46627
|
text: e.title,
|
|
46606
|
-
tag:
|
|
46628
|
+
tag: a
|
|
46607
46629
|
});
|
|
46608
46630
|
return t && c.push({
|
|
46609
46631
|
id: `${r}_d`,
|
|
46610
46632
|
type: "divider"
|
|
46611
46633
|
}, {
|
|
46612
46634
|
id: qj,
|
|
46613
|
-
text:
|
|
46635
|
+
text: o,
|
|
46614
46636
|
icon: /* @__PURE__ */ (0, O.jsx)(Ae, { size: "1rem" })
|
|
46615
46637
|
}), [r, c];
|
|
46616
46638
|
}));
|
|
46617
46639
|
}, [
|
|
46618
|
-
|
|
46640
|
+
i,
|
|
46619
46641
|
e,
|
|
46620
46642
|
s,
|
|
46621
46643
|
r,
|
|
46622
|
-
t
|
|
46623
|
-
|
|
46644
|
+
t,
|
|
46645
|
+
f
|
|
46646
|
+
]), v = (0, y.useMemo)(() => i.filter((e) => a[e]).length, [i, a]);
|
|
46624
46647
|
return {
|
|
46625
|
-
headers:
|
|
46626
|
-
matchedCount:
|
|
46627
|
-
allMatched:
|
|
46648
|
+
headers: i,
|
|
46649
|
+
matchedCount: v,
|
|
46650
|
+
allMatched: v === i.length,
|
|
46628
46651
|
placeholder: r("dataEditor.uploader.matchColumns.selectColumnPlaceholder"),
|
|
46629
|
-
existingNames:
|
|
46652
|
+
existingNames: g,
|
|
46630
46653
|
createModalValues: l,
|
|
46631
46654
|
getRowData: (0, y.useCallback)((e) => ({
|
|
46632
46655
|
mappedValue: a[e],
|
|
46633
|
-
options:
|
|
46634
|
-
autoMatchId:
|
|
46635
|
-
}), [
|
|
46636
|
-
|
|
46656
|
+
options: _[e],
|
|
46657
|
+
autoMatchId: f[e]
|
|
46658
|
+
}), [
|
|
46659
|
+
a,
|
|
46660
|
+
_,
|
|
46661
|
+
f
|
|
46662
|
+
]),
|
|
46663
|
+
onSelectChange: p,
|
|
46637
46664
|
onClear: o,
|
|
46638
|
-
submitCreate:
|
|
46639
|
-
closeCreate:
|
|
46665
|
+
submitCreate: m,
|
|
46666
|
+
closeCreate: h
|
|
46640
46667
|
};
|
|
46641
46668
|
}, $j = (0, y.createContext)(null);
|
|
46642
46669
|
function eM({ children: e }) {
|
|
@@ -46780,12 +46807,205 @@ var tM = () => {
|
|
|
46780
46807
|
/* @__PURE__ */ (0, O.jsx)(aM, {})
|
|
46781
46808
|
]
|
|
46782
46809
|
}), sM = () => {
|
|
46783
|
-
let { parsedCsv: e } =
|
|
46810
|
+
let { parsedCsv: e } = XN();
|
|
46784
46811
|
return e ? /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)("div", {
|
|
46785
46812
|
className: "updog__step-column-matching__content updog__scrollbar",
|
|
46786
46813
|
children: /* @__PURE__ */ (0, O.jsx)(eM, { children: /* @__PURE__ */ (0, O.jsx)(oM, {}) })
|
|
46787
46814
|
}), /* @__PURE__ */ (0, O.jsx)(Aj, {})] }) }) : null;
|
|
46788
|
-
}, cM = (
|
|
46815
|
+
}, cM = new Set([
|
|
46816
|
+
"true",
|
|
46817
|
+
"false",
|
|
46818
|
+
"yes",
|
|
46819
|
+
"no"
|
|
46820
|
+
]), lM = /^\d{1,4}[-/.]\d{1,2}[-/.]\d{1,4}$/, uM = /^[-+]?(\d{1,3}([ ,.]\d{3})+|\d+)([.,]\d+)?%?$/, dM = new Set([
|
|
46821
|
+
"number",
|
|
46822
|
+
"date",
|
|
46823
|
+
"bool"
|
|
46824
|
+
]);
|
|
46825
|
+
function fM(e) {
|
|
46826
|
+
if (e == null) return "empty";
|
|
46827
|
+
let t = String(e).trim();
|
|
46828
|
+
return t.length === 0 ? "empty" : cM.has(t.toLowerCase()) ? "bool" : lM.test(t) ? "date" : uM.test(t) ? "number" : "text";
|
|
46829
|
+
}
|
|
46830
|
+
function pM(e) {
|
|
46831
|
+
return e.filter((e) => e != null && String(e).trim().length > 0).length;
|
|
46832
|
+
}
|
|
46833
|
+
function mM(e) {
|
|
46834
|
+
let t = /* @__PURE__ */ new Map(), n = 0, r = 0;
|
|
46835
|
+
for (let i of e) {
|
|
46836
|
+
let e = pM(i);
|
|
46837
|
+
if (e === 0) continue;
|
|
46838
|
+
let a = (t.get(e) ?? 0) + 1;
|
|
46839
|
+
t.set(e, a), a > n && (n = a, r = e);
|
|
46840
|
+
}
|
|
46841
|
+
return r;
|
|
46842
|
+
}
|
|
46843
|
+
function hM(e) {
|
|
46844
|
+
let t = 0;
|
|
46845
|
+
for (let n of e) t = Math.max(t, n.length);
|
|
46846
|
+
return t;
|
|
46847
|
+
}
|
|
46848
|
+
function gM(e, t, n) {
|
|
46849
|
+
if (t <= 0) return 0;
|
|
46850
|
+
let r = -1, i = 0;
|
|
46851
|
+
for (let a = 0; a < e.length; a++) if (pM(e[a]) === t) {
|
|
46852
|
+
if (r < 0 && (r = a), i++, i >= n) return r;
|
|
46853
|
+
} else r = -1, i = 0;
|
|
46854
|
+
for (let n = 0; n < e.length; n++) if (pM(e[n]) === t) return n;
|
|
46855
|
+
return 0;
|
|
46856
|
+
}
|
|
46857
|
+
function _M(e, t, n, r) {
|
|
46858
|
+
let i = /* @__PURE__ */ new Map();
|
|
46859
|
+
for (let a = t; a < n; a++) {
|
|
46860
|
+
let t = fM(e[a]?.[r]);
|
|
46861
|
+
t !== "empty" && i.set(t, (i.get(t) ?? 0) + 1);
|
|
46862
|
+
}
|
|
46863
|
+
let a = "empty", o = 0;
|
|
46864
|
+
for (let [e, t] of i) t > o && (o = t, a = e);
|
|
46865
|
+
return a;
|
|
46866
|
+
}
|
|
46867
|
+
function vM(e, t, n, r) {
|
|
46868
|
+
let i = 0, a = 0;
|
|
46869
|
+
for (let o = 0; o < r; o++) {
|
|
46870
|
+
let r = _M(e, t + 1, n, o);
|
|
46871
|
+
r !== "empty" && (a++, fM(e[t]?.[o]) === "text" && dM.has(r) && i++);
|
|
46872
|
+
}
|
|
46873
|
+
return a === 0 ? 0 : i / a;
|
|
46874
|
+
}
|
|
46875
|
+
function yM(e, t, n, r) {
|
|
46876
|
+
let i = 0, a = 0;
|
|
46877
|
+
for (let o = 0; o < r; o++) {
|
|
46878
|
+
let r = _M(e, t, n, o);
|
|
46879
|
+
if (r !== "empty") for (let s = t; s < n; s++) {
|
|
46880
|
+
let t = fM(e[s]?.[o]);
|
|
46881
|
+
t !== "empty" && (a++, t === r && i++);
|
|
46882
|
+
}
|
|
46883
|
+
}
|
|
46884
|
+
return a === 0 ? 0 : i / a;
|
|
46885
|
+
}
|
|
46886
|
+
function bM(e) {
|
|
46887
|
+
let t = e.map(fM).filter((e) => e !== "empty");
|
|
46888
|
+
return t.length === 0 ? 0 : 1 - t.filter((e) => e !== "text").length / t.length;
|
|
46889
|
+
}
|
|
46890
|
+
function xM(e, t) {
|
|
46891
|
+
if (t <= 0) return 0;
|
|
46892
|
+
let n = pM(e);
|
|
46893
|
+
return Math.max(0, 1 - Math.abs(n - t) / t);
|
|
46894
|
+
}
|
|
46895
|
+
function SM(e) {
|
|
46896
|
+
let t = e.map((e) => String(e ?? "").trim().toLowerCase()).filter((e) => e.length > 0);
|
|
46897
|
+
return t.length === 0 ? 0 : new Set(t).size / t.length;
|
|
46898
|
+
}
|
|
46899
|
+
function CM(e, t, n, r, i) {
|
|
46900
|
+
return .45 * vM(e, t, n, r) + .25 * yM(e, t + 1, n, r) + .15 * bM(e[t] ?? []) + .1 * xM(e[t] ?? [], i) + .05 * SM(e[t] ?? []);
|
|
46901
|
+
}
|
|
46902
|
+
function wM(e, t = 100) {
|
|
46903
|
+
if (e.length === 0) return {
|
|
46904
|
+
headerRowIndex: 0,
|
|
46905
|
+
dataStartIndex: 0,
|
|
46906
|
+
confidence: 0,
|
|
46907
|
+
mode: "header",
|
|
46908
|
+
review: { kind: "none" }
|
|
46909
|
+
};
|
|
46910
|
+
let n = Math.min(t, e.length), r = e.slice(0, n), i = hM(r), a = mM(r), o = gM(r, a, 3), s = e[o] ?? [], c = vM(e, o, n, i), l = yM(e, o + 1, n, i), u = pM(s) > 0 && bM(s) === 0, d = Math.round(Math.max(0, CM(e, o, n, i, a)) * 100) / 100;
|
|
46911
|
+
if (u && c <= .15 && l >= .7) return {
|
|
46912
|
+
headerRowIndex: -1,
|
|
46913
|
+
dataStartIndex: o,
|
|
46914
|
+
confidence: d,
|
|
46915
|
+
mode: "no-header",
|
|
46916
|
+
review: { kind: "no-header" }
|
|
46917
|
+
};
|
|
46918
|
+
let f = d >= .55 ? { kind: "none" } : {
|
|
46919
|
+
kind: "ambiguous-row",
|
|
46920
|
+
confidence: d
|
|
46921
|
+
};
|
|
46922
|
+
return {
|
|
46923
|
+
headerRowIndex: o,
|
|
46924
|
+
dataStartIndex: o + 1,
|
|
46925
|
+
confidence: d,
|
|
46926
|
+
mode: "header",
|
|
46927
|
+
review: f
|
|
46928
|
+
};
|
|
46929
|
+
}
|
|
46930
|
+
function TM(e) {
|
|
46931
|
+
let t = /* @__PURE__ */ new Set();
|
|
46932
|
+
return e.map((e) => {
|
|
46933
|
+
let n = e, r = 2;
|
|
46934
|
+
for (; t.has(n);) n = `${e} (${r})`, r++;
|
|
46935
|
+
return t.add(n), n;
|
|
46936
|
+
});
|
|
46937
|
+
}
|
|
46938
|
+
//#endregion
|
|
46939
|
+
//#region src/components/DataUploader/components/StepHeaderSelection/context/useViewModel.tsx
|
|
46940
|
+
function EM(e, t, n, r) {
|
|
46941
|
+
return (0, y.useMemo)(() => ({
|
|
46942
|
+
sample: e,
|
|
46943
|
+
selectedRow: t,
|
|
46944
|
+
selectRow: n,
|
|
46945
|
+
noHeader: r
|
|
46946
|
+
}), [
|
|
46947
|
+
e,
|
|
46948
|
+
t,
|
|
46949
|
+
n,
|
|
46950
|
+
r
|
|
46951
|
+
]);
|
|
46952
|
+
}
|
|
46953
|
+
//#endregion
|
|
46954
|
+
//#region src/components/DataUploader/components/StepHeaderSelection/context/index.tsx
|
|
46955
|
+
var DM = (0, y.createContext)(null);
|
|
46956
|
+
function OM({ sample: e, selectedRow: t, selectRow: n, noHeader: r, children: i }) {
|
|
46957
|
+
let a = EM(e, t, n, r);
|
|
46958
|
+
return /* @__PURE__ */ (0, O.jsx)(DM.Provider, {
|
|
46959
|
+
value: a,
|
|
46960
|
+
children: i
|
|
46961
|
+
});
|
|
46962
|
+
}
|
|
46963
|
+
var kM = () => {
|
|
46964
|
+
let e = (0, y.useContext)(DM);
|
|
46965
|
+
if (!e) throw Error("useHeaderSelection must be used within HeaderSelectionProvider");
|
|
46966
|
+
return e;
|
|
46967
|
+
}, AM = () => {
|
|
46968
|
+
let { sample: e, selectedRow: t, selectRow: n, noHeader: r } = kM(), { headers: i } = XN(), { headers: a, rows: o } = (0, y.useMemo)(() => {
|
|
46969
|
+
let t = i.length;
|
|
46970
|
+
return {
|
|
46971
|
+
headers: i.map((e) => r ? e : ""),
|
|
46972
|
+
rows: e.map((e) => Array.from({ length: t }, (t, n) => String(e[n] ?? "")))
|
|
46973
|
+
};
|
|
46974
|
+
}, [
|
|
46975
|
+
e,
|
|
46976
|
+
i,
|
|
46977
|
+
r
|
|
46978
|
+
]);
|
|
46979
|
+
return /* @__PURE__ */ (0, O.jsx)(rv, {
|
|
46980
|
+
className: "updog__step-header-selection__preview",
|
|
46981
|
+
headers: a,
|
|
46982
|
+
rows: o,
|
|
46983
|
+
displayRows: e.length,
|
|
46984
|
+
blur: !1,
|
|
46985
|
+
selectedRow: r ? void 0 : t,
|
|
46986
|
+
onSelectRow: r ? void 0 : n
|
|
46987
|
+
});
|
|
46988
|
+
}, jM = () => {
|
|
46989
|
+
let { t: e } = j(), { parsedCsv: t, headerRowIndex: n, setHeaderRowIndex: r } = XN(), i = (0, y.useCallback)((e) => {
|
|
46990
|
+
r(e ? -1 : Math.max(0, t?.detection.headerRowIndex ?? 0));
|
|
46991
|
+
}, [r, t]);
|
|
46992
|
+
if (!t) return null;
|
|
46993
|
+
let a = t.rawRows.slice(0, 50), o = n < 0;
|
|
46994
|
+
return /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsx)(ah, { children: /* @__PURE__ */ (0, O.jsxs)(OM, {
|
|
46995
|
+
sample: a,
|
|
46996
|
+
selectedRow: o ? void 0 : n,
|
|
46997
|
+
selectRow: r,
|
|
46998
|
+
noHeader: o,
|
|
46999
|
+
children: [/* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47000
|
+
className: "updog__step-header-selection__content updog__scrollbar",
|
|
47001
|
+
children: [/* @__PURE__ */ (0, O.jsx)(jt, {
|
|
47002
|
+
checked: o,
|
|
47003
|
+
onChange: i,
|
|
47004
|
+
label: e("dataEditor.uploader.headerSelection.noHeaderLabel")
|
|
47005
|
+
}), /* @__PURE__ */ (0, O.jsx)(AM, {})]
|
|
47006
|
+
}), /* @__PURE__ */ (0, O.jsx)(Aj, {})]
|
|
47007
|
+
}) }) });
|
|
47008
|
+
}, MM = ({ open: e, existingOptions: t, initialName: n, onClose: r, onSubmit: i }) => {
|
|
46789
47009
|
let { t: a } = j();
|
|
46790
47010
|
return /* @__PURE__ */ (0, O.jsx)(vs, {
|
|
46791
47011
|
open: e,
|
|
@@ -46798,13 +47018,13 @@ var tM = () => {
|
|
|
46798
47018
|
onSubmit: i
|
|
46799
47019
|
})
|
|
46800
47020
|
});
|
|
46801
|
-
},
|
|
47021
|
+
}, NM = [
|
|
46802
47022
|
",",
|
|
46803
47023
|
";",
|
|
46804
47024
|
"|",
|
|
46805
47025
|
"\n",
|
|
46806
47026
|
" "
|
|
46807
|
-
],
|
|
47027
|
+
], PM = (e, t, n) => {
|
|
46808
47028
|
let r = new Set(n.map((e) => e.trim().toLowerCase())), i = (e) => r.has(e.trim().toLowerCase());
|
|
46809
47029
|
if (e.trim() === "") return [];
|
|
46810
47030
|
if (i(e)) return [e.trim()];
|
|
@@ -46816,80 +47036,144 @@ var tM = () => {
|
|
|
46816
47036
|
a.push(e);
|
|
46817
47037
|
continue;
|
|
46818
47038
|
}
|
|
46819
|
-
a.push(...
|
|
47039
|
+
a.push(...FM(e, t, i));
|
|
46820
47040
|
}
|
|
46821
47041
|
}
|
|
46822
47042
|
return a;
|
|
46823
|
-
},
|
|
46824
|
-
for (let r of
|
|
47043
|
+
}, FM = (e, t, n) => {
|
|
47044
|
+
for (let r of NM) {
|
|
46825
47045
|
if (r === t || !e.includes(r)) continue;
|
|
46826
47046
|
let i = e.split(r).map((e) => e.trim()).filter((e) => e !== "");
|
|
46827
47047
|
if (i.length >= 2 && i.every(n)) return i;
|
|
46828
47048
|
}
|
|
46829
47049
|
return [e];
|
|
46830
|
-
},
|
|
46831
|
-
let
|
|
46832
|
-
for (let
|
|
46833
|
-
|
|
46834
|
-
|
|
46835
|
-
|
|
46836
|
-
|
|
46837
|
-
|
|
46838
|
-
|
|
46839
|
-
|
|
47050
|
+
}, IM = (e, t, n) => {
|
|
47051
|
+
let r = /* @__PURE__ */ new Set();
|
|
47052
|
+
for (let i of e) if (i !== "") if (n) for (let e of PM(i, n, t)) r.add(e);
|
|
47053
|
+
else r.add(i);
|
|
47054
|
+
return [...r];
|
|
47055
|
+
}, LM = (e) => !e.some((e) => e != null && String(e).trim() !== ""), RM = (e, t) => {
|
|
47056
|
+
let n = 0;
|
|
47057
|
+
for (let r = t; r < e.length; r++) n = Math.max(n, e[r].length);
|
|
47058
|
+
return n;
|
|
47059
|
+
}, zM = 50, BM = (e, t, n) => {
|
|
47060
|
+
let r = Math.min(e.length, t + zM);
|
|
47061
|
+
for (let i = t; i < r; i++) {
|
|
47062
|
+
let t = e[i];
|
|
47063
|
+
if (!t || LM(t)) continue;
|
|
47064
|
+
let r = !0;
|
|
47065
|
+
for (let e = 0; e < n; e++) {
|
|
47066
|
+
let n = t[e];
|
|
47067
|
+
if (n == null || String(n).trim() === "") {
|
|
47068
|
+
r = !1;
|
|
47069
|
+
break;
|
|
47070
|
+
}
|
|
47071
|
+
}
|
|
47072
|
+
if (r) return Array.from({ length: n }, (e, n) => String(t[n]).trim());
|
|
47073
|
+
}
|
|
47074
|
+
return Array.from({ length: n }, (n, i) => {
|
|
47075
|
+
for (let n = t; n < r; n++) {
|
|
47076
|
+
let t = e[n];
|
|
47077
|
+
if (!t || LM(t)) continue;
|
|
47078
|
+
let r = t[i], a = r == null ? "" : String(r).trim();
|
|
47079
|
+
if (a !== "") return a;
|
|
47080
|
+
}
|
|
47081
|
+
return "";
|
|
47082
|
+
});
|
|
47083
|
+
}, VM = (e, t) => t === e.headerRowIndex ? e.dataStartIndex : t + 1, HM = (e, t, n, r) => {
|
|
47084
|
+
if (t < 0) {
|
|
47085
|
+
let t = RM(e, n), i = BM(e, n, t);
|
|
47086
|
+
return Array.from({ length: t }, (e, t) => r(t, i[t]));
|
|
47087
|
+
}
|
|
47088
|
+
return TM((e[t] ?? []).map((e) => String(e ?? "").trim()));
|
|
47089
|
+
}, UM = () => ({
|
|
47090
|
+
headerRowIndex: 0,
|
|
47091
|
+
dataStartIndex: 1,
|
|
47092
|
+
confidence: 1,
|
|
47093
|
+
mode: "header",
|
|
47094
|
+
review: { kind: "none" }
|
|
47095
|
+
}), WM = (e, t) => {
|
|
47096
|
+
let n = [e];
|
|
47097
|
+
for (let r of t) n.push(e.map((e) => r[e] ?? ""));
|
|
47098
|
+
return n;
|
|
47099
|
+
}, GM = (e) => {
|
|
47100
|
+
let t = /* @__PURE__ */ new Map();
|
|
47101
|
+
for (let n = 0; n < e.length; n++) t.set(e[n], n);
|
|
47102
|
+
return t;
|
|
47103
|
+
}, KM = (e, t, n) => {
|
|
47104
|
+
let r = [];
|
|
47105
|
+
for (let i = t; i < e.length; i++) {
|
|
47106
|
+
let t = e[i];
|
|
47107
|
+
if (LM(t)) continue;
|
|
47108
|
+
let a = t[n], o = a == null ? "" : String(a);
|
|
47109
|
+
o !== "" && r.push(o);
|
|
47110
|
+
}
|
|
47111
|
+
return r;
|
|
47112
|
+
}, qM = (e, t) => {
|
|
47113
|
+
let n = {};
|
|
47114
|
+
for (let r = 0; r < t.length; r++) n[t[r]] = String(e[r] ?? "");
|
|
47115
|
+
return n;
|
|
47116
|
+
}, JM = (e, t, n, r) => {
|
|
47117
|
+
let i = [];
|
|
47118
|
+
for (let a = n; a < e.length && i.length < r; a++) LM(e[a]) || i.push(qM(e[a], t));
|
|
47119
|
+
return i;
|
|
47120
|
+
}, YM = () => {
|
|
47121
|
+
let { columns: e } = th(), { t } = j(), { parsedCsv: n, headers: r, dataStartIndex: i, columnMapping: a, valueMapping: o, autoValueMapping: s, updateValueMapping: c, multiselectDelimiters: l, setMultiselectDelimiter: u, reapplyMultiselectDelimiter: d, pendingOptions: f, addPendingOption: p } = XN(), [m, h] = (0, y.useState)({}), [g, _] = (0, y.useState)({}), [v, b] = (0, y.useState)(null), x = (0, y.useRef)(!1), S = (0, y.useMemo)(() => {
|
|
46840
47122
|
if (!n) return [];
|
|
46841
|
-
let t = [];
|
|
46842
|
-
for (let [
|
|
46843
|
-
if (!
|
|
46844
|
-
let
|
|
46845
|
-
if (!
|
|
46846
|
-
let
|
|
46847
|
-
if (
|
|
46848
|
-
let
|
|
47123
|
+
let t = [], s = GM(r);
|
|
47124
|
+
for (let [r, c] of Object.entries(a)) {
|
|
47125
|
+
if (!c) continue;
|
|
47126
|
+
let a = e.find((e) => e.id === c);
|
|
47127
|
+
if (!a?.editor) continue;
|
|
47128
|
+
let u = a.editor.type;
|
|
47129
|
+
if (u !== "select" && u !== "multiselect") continue;
|
|
47130
|
+
let d = a.editor.options, f = o[c] ?? {}, p = u === "multiselect", m = p ? l[c] ?? null : null, h = s.get(r), g = IM(h === void 0 ? [] : KM(n.rawRows, i, h), d, m).map((e) => ({
|
|
46849
47131
|
imported: e,
|
|
46850
|
-
mapped:
|
|
47132
|
+
mapped: f[e]
|
|
46851
47133
|
}));
|
|
46852
|
-
|
|
46853
|
-
let
|
|
47134
|
+
g.sort((e, t) => e.imported.localeCompare(t.imported));
|
|
47135
|
+
let _ = g.filter((e) => e.mapped !== void 0).length;
|
|
46854
47136
|
t.push({
|
|
46855
|
-
columnId:
|
|
46856
|
-
columnTitle:
|
|
46857
|
-
options:
|
|
46858
|
-
enableCustomValue:
|
|
46859
|
-
isMultiselect:
|
|
46860
|
-
delimiter:
|
|
46861
|
-
values:
|
|
46862
|
-
matchedCount:
|
|
46863
|
-
allMatched:
|
|
47137
|
+
columnId: c,
|
|
47138
|
+
columnTitle: a.title,
|
|
47139
|
+
options: d,
|
|
47140
|
+
enableCustomValue: a.editor.enableCustomValue !== !1,
|
|
47141
|
+
isMultiselect: p,
|
|
47142
|
+
delimiter: m,
|
|
47143
|
+
values: g,
|
|
47144
|
+
matchedCount: _,
|
|
47145
|
+
allMatched: _ === g.length
|
|
46864
47146
|
});
|
|
46865
47147
|
}
|
|
46866
47148
|
return t;
|
|
46867
47149
|
}, [
|
|
46868
47150
|
n,
|
|
46869
47151
|
r,
|
|
46870
|
-
e,
|
|
46871
47152
|
i,
|
|
46872
|
-
|
|
47153
|
+
a,
|
|
47154
|
+
e,
|
|
47155
|
+
o,
|
|
47156
|
+
l
|
|
46873
47157
|
]);
|
|
46874
47158
|
(0, y.useEffect)(() => {
|
|
46875
|
-
if (
|
|
46876
|
-
|
|
47159
|
+
if (x.current || S.length === 0) return;
|
|
47160
|
+
x.current = !0;
|
|
46877
47161
|
let e = {};
|
|
46878
|
-
for (let t of
|
|
46879
|
-
|
|
46880
|
-
}, [
|
|
46881
|
-
let
|
|
47162
|
+
for (let t of S) t.allMatched && (e[t.columnId] = !0);
|
|
47163
|
+
_(e);
|
|
47164
|
+
}, [S]);
|
|
47165
|
+
let C = (0, y.useMemo)(() => {
|
|
46882
47166
|
let e = {
|
|
46883
47167
|
text: t("dataEditor.uploader.matchColumns.bestMatch"),
|
|
46884
47168
|
color: "green"
|
|
46885
47169
|
}, n = t("dataEditor.uploader.matchValues.createOption"), r = {};
|
|
46886
|
-
for (let t of
|
|
46887
|
-
let i =
|
|
47170
|
+
for (let t of S) {
|
|
47171
|
+
let i = f[t.columnId] ?? [], a = {};
|
|
46888
47172
|
for (let r of t.values) {
|
|
46889
|
-
let
|
|
47173
|
+
let o = s[t.columnId]?.[r.imported], c = new Set(t.options), l = t.options.map((t) => ({
|
|
46890
47174
|
id: t,
|
|
46891
47175
|
text: t,
|
|
46892
|
-
...t ===
|
|
47176
|
+
...t === o && { tag: e }
|
|
46893
47177
|
}));
|
|
46894
47178
|
if (t.enableCustomValue) {
|
|
46895
47179
|
for (let e of i) c.has(e) || (l.push({
|
|
@@ -46905,81 +47189,81 @@ var tM = () => {
|
|
|
46905
47189
|
icon: /* @__PURE__ */ (0, O.jsx)(Ae, { size: "1rem" })
|
|
46906
47190
|
});
|
|
46907
47191
|
}
|
|
46908
|
-
|
|
47192
|
+
a[r.imported] = l;
|
|
46909
47193
|
}
|
|
46910
|
-
r[t.columnId] =
|
|
47194
|
+
r[t.columnId] = a;
|
|
46911
47195
|
}
|
|
46912
47196
|
return r;
|
|
46913
47197
|
}, [
|
|
46914
|
-
|
|
46915
|
-
|
|
46916
|
-
|
|
47198
|
+
S,
|
|
47199
|
+
s,
|
|
47200
|
+
f,
|
|
46917
47201
|
t
|
|
46918
|
-
]),
|
|
46919
|
-
let t =
|
|
47202
|
+
]), w = (0, y.useCallback)((e) => m[e] ?? !0, [m]), T = (0, y.useCallback)((e) => g[e] ?? !1, [g]), E = (0, y.useCallback)((e) => {
|
|
47203
|
+
let t = m[e.columnId] ?? !0;
|
|
46920
47204
|
return e.values.filter((e) => t || e.mapped === void 0);
|
|
46921
|
-
}, [
|
|
46922
|
-
|
|
47205
|
+
}, [m]), D = (0, y.useCallback)((e, t) => C[e]?.[t] ?? [], [C]), k = (0, y.useCallback)((e, t) => {
|
|
47206
|
+
h((n) => ({
|
|
46923
47207
|
...n,
|
|
46924
47208
|
[e]: t
|
|
46925
47209
|
}));
|
|
46926
|
-
}, []),
|
|
46927
|
-
|
|
47210
|
+
}, []), A = (0, y.useCallback)((e) => {
|
|
47211
|
+
_((t) => ({
|
|
46928
47212
|
...t,
|
|
46929
47213
|
[e]: !t[e]
|
|
46930
47214
|
}));
|
|
46931
|
-
}, []),
|
|
47215
|
+
}, []), M = (0, y.useCallback)((e, t, n) => {
|
|
46932
47216
|
if (n === "action:create-option") {
|
|
46933
|
-
|
|
47217
|
+
b({
|
|
46934
47218
|
columnId: e,
|
|
46935
47219
|
imported: t
|
|
46936
47220
|
});
|
|
46937
47221
|
return;
|
|
46938
47222
|
}
|
|
46939
|
-
|
|
46940
|
-
}, [
|
|
46941
|
-
|
|
46942
|
-
}, [
|
|
46943
|
-
|
|
46944
|
-
}, [
|
|
46945
|
-
|
|
47223
|
+
c(e, t, n);
|
|
47224
|
+
}, [c]), N = (0, y.useCallback)((e, t) => {
|
|
47225
|
+
u(e, t === "" ? null : t);
|
|
47226
|
+
}, [u]), P = (0, y.useCallback)((e) => {
|
|
47227
|
+
d(e);
|
|
47228
|
+
}, [d]), F = (0, y.useCallback)((e) => {
|
|
47229
|
+
v && (p(v.columnId, e), c(v.columnId, v.imported, e), b(null));
|
|
46946
47230
|
}, [
|
|
46947
|
-
|
|
46948
|
-
|
|
46949
|
-
|
|
46950
|
-
]),
|
|
47231
|
+
v,
|
|
47232
|
+
p,
|
|
47233
|
+
c
|
|
47234
|
+
]), I = (0, y.useCallback)(() => b(null), []);
|
|
46951
47235
|
return {
|
|
46952
|
-
sections:
|
|
46953
|
-
selectOptionsByValue:
|
|
46954
|
-
createForOptions: (0, y.useMemo)(() =>
|
|
46955
|
-
hasCreateTarget:
|
|
46956
|
-
createInitialName:
|
|
46957
|
-
isShowMatched:
|
|
46958
|
-
isCollapsed:
|
|
46959
|
-
getVisibleValues:
|
|
46960
|
-
getSelectOptions:
|
|
46961
|
-
setShowMatched:
|
|
46962
|
-
toggleCollapsed:
|
|
46963
|
-
selectValue:
|
|
46964
|
-
changeDelimiter:
|
|
46965
|
-
reapplyDelimiter:
|
|
46966
|
-
submitCreate:
|
|
46967
|
-
closeCreate:
|
|
47236
|
+
sections: S,
|
|
47237
|
+
selectOptionsByValue: C,
|
|
47238
|
+
createForOptions: (0, y.useMemo)(() => S.find((e) => e.columnId === v?.columnId)?.options ?? [], [S, v]),
|
|
47239
|
+
hasCreateTarget: v !== null,
|
|
47240
|
+
createInitialName: v?.imported ?? "",
|
|
47241
|
+
isShowMatched: w,
|
|
47242
|
+
isCollapsed: T,
|
|
47243
|
+
getVisibleValues: E,
|
|
47244
|
+
getSelectOptions: D,
|
|
47245
|
+
setShowMatched: k,
|
|
47246
|
+
toggleCollapsed: A,
|
|
47247
|
+
selectValue: M,
|
|
47248
|
+
changeDelimiter: N,
|
|
47249
|
+
reapplyDelimiter: P,
|
|
47250
|
+
submitCreate: F,
|
|
47251
|
+
closeCreate: I
|
|
46968
47252
|
};
|
|
46969
|
-
},
|
|
46970
|
-
function
|
|
46971
|
-
let t =
|
|
46972
|
-
return /* @__PURE__ */ (0, O.jsx)(
|
|
47253
|
+
}, XM = (0, y.createContext)(null);
|
|
47254
|
+
function ZM({ children: e }) {
|
|
47255
|
+
let t = YM();
|
|
47256
|
+
return /* @__PURE__ */ (0, O.jsx)(XM.Provider, {
|
|
46973
47257
|
value: t,
|
|
46974
47258
|
children: e
|
|
46975
47259
|
});
|
|
46976
47260
|
}
|
|
46977
|
-
var
|
|
46978
|
-
let e = (0, y.useContext)(
|
|
47261
|
+
var QM = () => {
|
|
47262
|
+
let e = (0, y.useContext)(XM);
|
|
46979
47263
|
if (!e) throw Error("useValueMatching must be used within ValueMatchingProvider");
|
|
46980
47264
|
return e;
|
|
46981
|
-
},
|
|
46982
|
-
let { t } = j(), { isShowMatched: n, isCollapsed: r, setShowMatched: i, toggleCollapsed: a } =
|
|
47265
|
+
}, $M = ({ section: e }) => {
|
|
47266
|
+
let { t } = j(), { isShowMatched: n, isCollapsed: r, setShowMatched: i, toggleCollapsed: a } = QM(), o = r(e.columnId), s = t(o ? "dataEditor.common.expand" : "dataEditor.common.collapse"), c = (0, y.useCallback)((t) => i(e.columnId, t), [i, e.columnId]), l = (0, y.useCallback)(() => a(e.columnId), [a, e.columnId]);
|
|
46983
47267
|
return /* @__PURE__ */ (0, O.jsxs)("header", {
|
|
46984
47268
|
className: "updog__value-matching__section-header",
|
|
46985
47269
|
children: [/* @__PURE__ */ (0, O.jsx)("div", {
|
|
@@ -47023,14 +47307,14 @@ var gM = () => {
|
|
|
47023
47307
|
})
|
|
47024
47308
|
})]
|
|
47025
47309
|
});
|
|
47026
|
-
},
|
|
47310
|
+
}, eN = {
|
|
47027
47311
|
",": ",",
|
|
47028
47312
|
";": ";",
|
|
47029
47313
|
"|": "|",
|
|
47030
47314
|
"\n": "\\n",
|
|
47031
47315
|
" ": "\\t"
|
|
47032
|
-
},
|
|
47033
|
-
let { t } = j(), { changeDelimiter: n, reapplyDelimiter: r } =
|
|
47316
|
+
}, tN = (e) => e === null ? "" : eN[e] ?? e, nN = ({ section: e }) => {
|
|
47317
|
+
let { t } = j(), { changeDelimiter: n, reapplyDelimiter: r } = QM(), i = (0, y.useRef)(e.delimiter), a = tN(e.delimiter), [o, s] = (0, y.useState)(a), { debouncedValue: c } = gc(o, 300), l = (0, y.useRef)(a);
|
|
47034
47318
|
(0, y.useEffect)(() => {
|
|
47035
47319
|
s(a), l.current = a;
|
|
47036
47320
|
}, [a]), (0, y.useEffect)(() => {
|
|
@@ -47073,8 +47357,8 @@ var gM = () => {
|
|
|
47073
47357
|
})
|
|
47074
47358
|
]
|
|
47075
47359
|
});
|
|
47076
|
-
},
|
|
47077
|
-
let { t: n } = j(), { getSelectOptions: r, selectValue: i } =
|
|
47360
|
+
}, rN = ({ section: e, val: t }) => {
|
|
47361
|
+
let { t: n } = j(), { getSelectOptions: r, selectValue: i } = QM(), a = t.mapped === void 0, o = (0, y.useCallback)((n) => i(e.columnId, t.imported, n), [
|
|
47078
47362
|
i,
|
|
47079
47363
|
e.columnId,
|
|
47080
47364
|
t.imported
|
|
@@ -47126,8 +47410,8 @@ var gM = () => {
|
|
|
47126
47410
|
})
|
|
47127
47411
|
]
|
|
47128
47412
|
});
|
|
47129
|
-
},
|
|
47130
|
-
let { t } = j(), { getVisibleValues: n } =
|
|
47413
|
+
}, iN = ({ section: e }) => {
|
|
47414
|
+
let { t } = j(), { getVisibleValues: n } = QM(), r = n(e);
|
|
47131
47415
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47132
47416
|
className: "updog__value-matching__table",
|
|
47133
47417
|
children: [r.length === 0 ? /* @__PURE__ */ (0, O.jsx)("div", {
|
|
@@ -47147,7 +47431,7 @@ var gM = () => {
|
|
|
47147
47431
|
size: "sm",
|
|
47148
47432
|
weight: "medium",
|
|
47149
47433
|
children: t("dataEditor.uploader.matchValues.importedValues")
|
|
47150
|
-
}), e.isMultiselect && /* @__PURE__ */ (0, O.jsx)(
|
|
47434
|
+
}), e.isMultiselect && /* @__PURE__ */ (0, O.jsx)(nN, { section: e })]
|
|
47151
47435
|
}),
|
|
47152
47436
|
/* @__PURE__ */ (0, O.jsx)("div", { className: "updog__value-matching__arrow-spacer" }),
|
|
47153
47437
|
/* @__PURE__ */ (0, O.jsx)(W, {
|
|
@@ -47159,25 +47443,25 @@ var gM = () => {
|
|
|
47159
47443
|
}),
|
|
47160
47444
|
/* @__PURE__ */ (0, O.jsx)("div", { className: "updog__value-matching__action" })
|
|
47161
47445
|
]
|
|
47162
|
-
}), r.map((t) => /* @__PURE__ */ (0, O.jsx)(
|
|
47446
|
+
}), r.map((t) => /* @__PURE__ */ (0, O.jsx)(rN, {
|
|
47163
47447
|
section: e,
|
|
47164
47448
|
val: t
|
|
47165
47449
|
}, t.imported))]
|
|
47166
47450
|
});
|
|
47167
|
-
},
|
|
47168
|
-
let { isCollapsed: t } =
|
|
47451
|
+
}, aN = ({ section: e }) => {
|
|
47452
|
+
let { isCollapsed: t } = QM(), n = !t(e.columnId);
|
|
47169
47453
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47170
47454
|
className: "updog__value-matching__section",
|
|
47171
|
-
children: [/* @__PURE__ */ (0, O.jsx)(
|
|
47455
|
+
children: [/* @__PURE__ */ (0, O.jsx)($M, { section: e }), /* @__PURE__ */ (0, O.jsx)("div", {
|
|
47172
47456
|
className: N("updog__value-matching__collapsible", n && "updog__value-matching__collapsible--expanded"),
|
|
47173
|
-
children: /* @__PURE__ */ (0, O.jsx)(
|
|
47457
|
+
children: /* @__PURE__ */ (0, O.jsx)(iN, { section: e })
|
|
47174
47458
|
})]
|
|
47175
47459
|
});
|
|
47176
|
-
},
|
|
47177
|
-
let { sections: e, hasCreateTarget: t, createForOptions: n, createInitialName: r, submitCreate: i, closeCreate: a } =
|
|
47460
|
+
}, oN = () => {
|
|
47461
|
+
let { sections: e, hasCreateTarget: t, createForOptions: n, createInitialName: r, submitCreate: i, closeCreate: a } = QM();
|
|
47178
47462
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47179
47463
|
className: "updog__value-matching",
|
|
47180
|
-
children: [e.map((e) => /* @__PURE__ */ (0, O.jsx)(
|
|
47464
|
+
children: [e.map((e) => /* @__PURE__ */ (0, O.jsx)(aN, { section: e }, e.columnId)), t && /* @__PURE__ */ (0, O.jsx)(MM, {
|
|
47181
47465
|
open: !0,
|
|
47182
47466
|
existingOptions: n,
|
|
47183
47467
|
initialName: r,
|
|
@@ -47185,22 +47469,26 @@ var gM = () => {
|
|
|
47185
47469
|
onSubmit: i
|
|
47186
47470
|
})]
|
|
47187
47471
|
});
|
|
47188
|
-
},
|
|
47472
|
+
}, sN = () => /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)("div", {
|
|
47189
47473
|
className: "updog__step-match-values__content updog__scrollbar",
|
|
47190
|
-
children: /* @__PURE__ */ (0, O.jsx)(
|
|
47191
|
-
}), /* @__PURE__ */ (0, O.jsx)(Aj, {})] }) }),
|
|
47192
|
-
let { store: e } = th(), { t } = j(), { primaryKey: n, onPrimaryKeyChange: r, parsedCsv: i,
|
|
47474
|
+
children: /* @__PURE__ */ (0, O.jsx)(ZM, { children: /* @__PURE__ */ (0, O.jsx)(oN, {}) })
|
|
47475
|
+
}), /* @__PURE__ */ (0, O.jsx)(Aj, {})] }) }), cN = 20, lN = () => {
|
|
47476
|
+
let { store: e } = th(), { t } = j(), { primaryKey: n, onPrimaryKeyChange: r, parsedCsv: i, headers: a, dataStartIndex: o, columnMapping: s, primaryKeyColumns: c } = XN(), l = e.isClient(), u = (0, y.useCallback)(() => r(null), [r]), d = (0, y.useMemo)(() => {
|
|
47193
47477
|
let e = {};
|
|
47194
|
-
for (let [t, n] of Object.entries(
|
|
47478
|
+
for (let [t, n] of Object.entries(s)) n && (e[n] = t);
|
|
47195
47479
|
return e;
|
|
47196
|
-
}, [
|
|
47480
|
+
}, [s]), f = (0, y.useMemo)(() => i ? JM(i.rawRows, a, o, cN) : [], [
|
|
47481
|
+
i,
|
|
47482
|
+
a,
|
|
47483
|
+
o
|
|
47484
|
+
]);
|
|
47197
47485
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47198
47486
|
className: "updog__primary-key-selection updog__scrollbar",
|
|
47199
|
-
children: [
|
|
47487
|
+
children: [l && /* @__PURE__ */ (0, O.jsxs)(hc, {
|
|
47200
47488
|
name: "primaryKey",
|
|
47201
47489
|
value: "",
|
|
47202
47490
|
checked: n === null,
|
|
47203
|
-
onChange:
|
|
47491
|
+
onChange: u,
|
|
47204
47492
|
radioPosition: "end",
|
|
47205
47493
|
className: N("updog__primary-key-selection__card", n === null && "updog__primary-key-selection__card--selected"),
|
|
47206
47494
|
children: [/* @__PURE__ */ (0, O.jsx)(W, {
|
|
@@ -47213,8 +47501,8 @@ var gM = () => {
|
|
|
47213
47501
|
className: "updog__primary-key-selection__value-text updog__primary-key-selection__value-none",
|
|
47214
47502
|
children: t("dataEditor.uploader.primaryKey.noneHint")
|
|
47215
47503
|
})]
|
|
47216
|
-
}),
|
|
47217
|
-
let t =
|
|
47504
|
+
}), c.map((e) => {
|
|
47505
|
+
let t = d[e.id], i = t ? f.map((e) => e[t] ?? "") : [];
|
|
47218
47506
|
return /* @__PURE__ */ (0, O.jsxs)(hc, {
|
|
47219
47507
|
name: "primaryKey",
|
|
47220
47508
|
value: e.id,
|
|
@@ -47241,8 +47529,8 @@ var gM = () => {
|
|
|
47241
47529
|
}, e.id);
|
|
47242
47530
|
})]
|
|
47243
47531
|
});
|
|
47244
|
-
},
|
|
47245
|
-
let { columns: e, importFormats: t, remoteSources: n, sampleData: r } = th(), i = t === !1 ? [] : t, { t: a } = j(), { parsedCsv: o, xlsxFile: s, handleFileRemoved: c, parseFile: l, isParsing: u, remoteSourceLoading: d, remoteSourceError: f, handleRemoteSourceSelect: p } =
|
|
47532
|
+
}, uN = () => /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)(lN, {}), /* @__PURE__ */ (0, O.jsx)(Aj, {})] }) }), dN = () => {
|
|
47533
|
+
let { columns: e, importFormats: t, remoteSources: n, sampleData: r } = th(), i = t === !1 ? [] : t, { t: a } = j(), { parsedCsv: o, xlsxFile: s, handleFileRemoved: c, parseFile: l, isParsing: u, remoteSourceLoading: d, remoteSourceError: f, handleRemoteSourceSelect: p } = XN(), m = [
|
|
47246
47534
|
{
|
|
47247
47535
|
id: "csv",
|
|
47248
47536
|
format: "csv",
|
|
@@ -47300,20 +47588,20 @@ var gM = () => {
|
|
|
47300
47588
|
}, [c]),
|
|
47301
47589
|
handleRemoteSourceSelect: p
|
|
47302
47590
|
};
|
|
47303
|
-
},
|
|
47304
|
-
function
|
|
47305
|
-
let t =
|
|
47306
|
-
return /* @__PURE__ */ (0, O.jsx)(
|
|
47591
|
+
}, fN = (0, y.createContext)(null);
|
|
47592
|
+
function pN({ children: e }) {
|
|
47593
|
+
let t = dN();
|
|
47594
|
+
return /* @__PURE__ */ (0, O.jsx)(fN.Provider, {
|
|
47307
47595
|
value: t,
|
|
47308
47596
|
children: e
|
|
47309
47597
|
});
|
|
47310
47598
|
}
|
|
47311
|
-
var
|
|
47312
|
-
let e = (0, y.useContext)(
|
|
47599
|
+
var mN = () => {
|
|
47600
|
+
let e = (0, y.useContext)(fN);
|
|
47313
47601
|
if (!e) throw Error("useSelectFiles must be used within SelectFilesProvider");
|
|
47314
47602
|
return e;
|
|
47315
|
-
},
|
|
47316
|
-
let { t: e } = j(), { exampleMenuOptions: t, onExampleDownload: n } =
|
|
47603
|
+
}, hN = () => {
|
|
47604
|
+
let { t: e } = j(), { exampleMenuOptions: t, onExampleDownload: n } = mN();
|
|
47317
47605
|
return /* @__PURE__ */ (0, O.jsx)(fc, {
|
|
47318
47606
|
options: t,
|
|
47319
47607
|
onSelect: n,
|
|
@@ -47325,7 +47613,7 @@ var MM = () => {
|
|
|
47325
47613
|
children: e("dataEditor.uploader.uploadFile.downloadExample")
|
|
47326
47614
|
})
|
|
47327
47615
|
});
|
|
47328
|
-
},
|
|
47616
|
+
}, gN = ({ source: e }) => e.icon.trimStart().startsWith("<") ? /* @__PURE__ */ (0, O.jsx)("span", {
|
|
47329
47617
|
className: "updog__remote-source-btn__icon",
|
|
47330
47618
|
dangerouslySetInnerHTML: { __html: e.icon }
|
|
47331
47619
|
}) : /* @__PURE__ */ (0, O.jsx)("span", {
|
|
@@ -47334,7 +47622,7 @@ var MM = () => {
|
|
|
47334
47622
|
src: e.icon,
|
|
47335
47623
|
alt: e.label
|
|
47336
47624
|
})
|
|
47337
|
-
}),
|
|
47625
|
+
}), _N = ({ source: e, loading: t, disabled: n, onSelect: r }) => /* @__PURE__ */ (0, O.jsx)(ot, {
|
|
47338
47626
|
variant: "filled",
|
|
47339
47627
|
color: "neutral",
|
|
47340
47628
|
size: "sm",
|
|
@@ -47344,11 +47632,11 @@ var MM = () => {
|
|
|
47344
47632
|
disabled: !t && n,
|
|
47345
47633
|
loading: t,
|
|
47346
47634
|
spinnerPosition: "start",
|
|
47347
|
-
startIcon: /* @__PURE__ */ (0, O.jsx)(
|
|
47635
|
+
startIcon: /* @__PURE__ */ (0, O.jsx)(gN, { source: e }),
|
|
47348
47636
|
title: e.description,
|
|
47349
47637
|
children: e.label
|
|
47350
|
-
}),
|
|
47351
|
-
let { t: e } = j(), { importFormats: t, remoteSources: n, remoteSourceLoading: r, remoteSourceError: i, handleRemoteSourceSelect: a } =
|
|
47638
|
+
}), vN = () => {
|
|
47639
|
+
let { t: e } = j(), { importFormats: t, remoteSources: n, remoteSourceLoading: r, remoteSourceError: i, handleRemoteSourceSelect: a } = mN(), o = n.length > 0;
|
|
47352
47640
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47353
47641
|
className: "updog__source-picker",
|
|
47354
47642
|
children: [
|
|
@@ -47375,7 +47663,7 @@ var MM = () => {
|
|
|
47375
47663
|
}),
|
|
47376
47664
|
o && /* @__PURE__ */ (0, O.jsxs)(O.Fragment, { children: [/* @__PURE__ */ (0, O.jsx)(ac, {}), /* @__PURE__ */ (0, O.jsx)("div", {
|
|
47377
47665
|
className: "updog__source-picker__sources-list",
|
|
47378
|
-
children: n.map((e) => /* @__PURE__ */ (0, O.jsx)(
|
|
47666
|
+
children: n.map((e) => /* @__PURE__ */ (0, O.jsx)(_N, {
|
|
47379
47667
|
source: e,
|
|
47380
47668
|
loading: r === e.id,
|
|
47381
47669
|
disabled: !!r,
|
|
@@ -47389,7 +47677,7 @@ var MM = () => {
|
|
|
47389
47677
|
})
|
|
47390
47678
|
]
|
|
47391
47679
|
});
|
|
47392
|
-
},
|
|
47680
|
+
}, yN = () => {
|
|
47393
47681
|
let { t: e } = j();
|
|
47394
47682
|
return /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47395
47683
|
className: "updog__uploading-state",
|
|
@@ -47402,12 +47690,12 @@ var MM = () => {
|
|
|
47402
47690
|
children: e("dataEditor.uploader.uploadFile.uploading")
|
|
47403
47691
|
})]
|
|
47404
47692
|
});
|
|
47405
|
-
},
|
|
47406
|
-
let { t: e } = j(), { isBlocked: t, isParsing: n, hasFile: r, fileName: i, open: a, onRemoveClick: o } =
|
|
47693
|
+
}, bN = () => {
|
|
47694
|
+
let { t: e } = j(), { isBlocked: t, isParsing: n, hasFile: r, fileName: i, open: a, onRemoveClick: o } = mN();
|
|
47407
47695
|
return /* @__PURE__ */ (0, O.jsx)("div", {
|
|
47408
47696
|
className: N("updog__step-select-files__upload-area", t && "updog__step-select-files__upload-area--disabled"),
|
|
47409
47697
|
onClick: t ? void 0 : a,
|
|
47410
|
-
children: n ? /* @__PURE__ */ (0, O.jsx)(
|
|
47698
|
+
children: n ? /* @__PURE__ */ (0, O.jsx)(yN, {}) : /* @__PURE__ */ (0, O.jsxs)(O.Fragment, { children: [
|
|
47411
47699
|
/* @__PURE__ */ (0, O.jsx)("div", {
|
|
47412
47700
|
className: "updog__step-select-files__icon-container",
|
|
47413
47701
|
children: r ? /* @__PURE__ */ (0, O.jsx)(oe, {
|
|
@@ -47418,7 +47706,7 @@ var MM = () => {
|
|
|
47418
47706
|
className: "updog__step-select-files__icon"
|
|
47419
47707
|
})
|
|
47420
47708
|
}),
|
|
47421
|
-
!r && /* @__PURE__ */ (0, O.jsx)(
|
|
47709
|
+
!r && /* @__PURE__ */ (0, O.jsx)(vN, {}),
|
|
47422
47710
|
r && /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47423
47711
|
className: "updog__step-select-files__info",
|
|
47424
47712
|
children: [/* @__PURE__ */ (0, O.jsx)(W, {
|
|
@@ -47435,19 +47723,19 @@ var MM = () => {
|
|
|
47435
47723
|
})
|
|
47436
47724
|
] })
|
|
47437
47725
|
});
|
|
47438
|
-
},
|
|
47439
|
-
let { getRootProps: e, getInputProps: t, isDragActive: n } =
|
|
47726
|
+
}, xN = () => {
|
|
47727
|
+
let { getRootProps: e, getInputProps: t, isDragActive: n } = mN();
|
|
47440
47728
|
return /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsxs)("div", {
|
|
47441
47729
|
className: "updog__step-select-files__dropzone",
|
|
47442
47730
|
...e(),
|
|
47443
47731
|
children: [
|
|
47444
47732
|
/* @__PURE__ */ (0, O.jsx)("input", { ...t() }),
|
|
47445
|
-
/* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)(
|
|
47733
|
+
/* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)(bN, {}), /* @__PURE__ */ (0, O.jsx)(Aj, { leftSlot: /* @__PURE__ */ (0, O.jsx)(hN, {}) })] }),
|
|
47446
47734
|
n && /* @__PURE__ */ (0, O.jsx)(oh, {})
|
|
47447
47735
|
]
|
|
47448
47736
|
}) });
|
|
47449
|
-
},
|
|
47450
|
-
let { selectedSheet: t, setSelectedSheet: n } =
|
|
47737
|
+
}, SN = () => /* @__PURE__ */ (0, O.jsx)(pN, { children: /* @__PURE__ */ (0, O.jsx)(xN, {}) }), CN = ({ preview: e }) => {
|
|
47738
|
+
let { selectedSheet: t, setSelectedSheet: n } = XN(), { t: r } = j(), i = Math.max(0, e.totalRows), a = t === e.name, o = (0, y.useMemo)(() => {
|
|
47451
47739
|
let { headers: t, rows: n } = e;
|
|
47452
47740
|
return n.map((e) => t.map((t) => e[t] ?? ""));
|
|
47453
47741
|
}, [e]);
|
|
@@ -47484,16 +47772,16 @@ var MM = () => {
|
|
|
47484
47772
|
})]
|
|
47485
47773
|
})
|
|
47486
47774
|
});
|
|
47487
|
-
},
|
|
47488
|
-
let { sheetPreviews: e } =
|
|
47775
|
+
}, wN = () => {
|
|
47776
|
+
let { sheetPreviews: e } = XN();
|
|
47489
47777
|
return /* @__PURE__ */ (0, O.jsx)(sh, { children: /* @__PURE__ */ (0, O.jsxs)(ah, { children: [/* @__PURE__ */ (0, O.jsx)("div", {
|
|
47490
47778
|
className: "updog__sheet-preview-wrapper updog__scrollbar",
|
|
47491
47779
|
children: /* @__PURE__ */ (0, O.jsx)("div", {
|
|
47492
47780
|
className: "updog__sheet-preview-grid",
|
|
47493
|
-
children: e.map((e) => /* @__PURE__ */ (0, O.jsx)(
|
|
47781
|
+
children: e.map((e) => /* @__PURE__ */ (0, O.jsx)(CN, { preview: e }, e.name))
|
|
47494
47782
|
})
|
|
47495
47783
|
}), /* @__PURE__ */ (0, O.jsx)(Aj, {})] }) });
|
|
47496
|
-
},
|
|
47784
|
+
}, TN = (e, t, n) => {
|
|
47497
47785
|
let r = new Map(t.map((e) => [e.id, e])), i = [];
|
|
47498
47786
|
for (let [t, a] of Object.entries(e)) a && i.push({
|
|
47499
47787
|
csvHeader: t,
|
|
@@ -47501,11 +47789,11 @@ var MM = () => {
|
|
|
47501
47789
|
column: n.has(a) ? void 0 : r.get(a)
|
|
47502
47790
|
});
|
|
47503
47791
|
return i;
|
|
47504
|
-
},
|
|
47792
|
+
}, EN = (e) => {
|
|
47505
47793
|
let t = [];
|
|
47506
47794
|
for (let { csvHeader: n, column: r } of e) r?.editor?.type === "number" && t.push(n);
|
|
47507
47795
|
return t;
|
|
47508
|
-
},
|
|
47796
|
+
}, DN = (e, t, n) => {
|
|
47509
47797
|
let r = {};
|
|
47510
47798
|
for (let { csvHeader: i, columnId: a, column: o } of t) {
|
|
47511
47799
|
let t = e[i] ?? "";
|
|
@@ -47520,7 +47808,7 @@ var MM = () => {
|
|
|
47520
47808
|
continue;
|
|
47521
47809
|
}
|
|
47522
47810
|
if (s === "multiselect") {
|
|
47523
|
-
let e = n.multiselectDelimiters[a], i = o.editor.options ?? [], s = e ?
|
|
47811
|
+
let e = n.multiselectDelimiters[a], i = o.editor.options ?? [], s = e ? PM(t, e, i) : t === "" ? [] : [t], c = [], l = /* @__PURE__ */ new Set();
|
|
47524
47812
|
for (let e of s) {
|
|
47525
47813
|
let t = n.valueMapping[a]?.[e.trim()];
|
|
47526
47814
|
t !== void 0 && !l.has(t) && (l.add(t), c.push(t));
|
|
@@ -47532,88 +47820,16 @@ var MM = () => {
|
|
|
47532
47820
|
r[a] = o.transformer ? o.transformer(c) : c;
|
|
47533
47821
|
}
|
|
47534
47822
|
return r;
|
|
47535
|
-
},
|
|
47536
|
-
"true",
|
|
47537
|
-
"false",
|
|
47538
|
-
"yes",
|
|
47539
|
-
"no"
|
|
47540
|
-
]), YM = 50;
|
|
47541
|
-
function XM(e) {
|
|
47542
|
-
return !!(KM.test(e) || qM.test(e) || JM.has(e.toLowerCase()));
|
|
47543
|
-
}
|
|
47544
|
-
function ZM(e) {
|
|
47545
|
-
return e.filter((e) => e != null && String(e).trim().length > 0).length;
|
|
47546
|
-
}
|
|
47547
|
-
function QM(e) {
|
|
47548
|
-
let t = /* @__PURE__ */ new Map(), n = 0, r = 0;
|
|
47549
|
-
for (let i of e) {
|
|
47550
|
-
let e = ZM(i);
|
|
47551
|
-
if (e === 0) continue;
|
|
47552
|
-
let a = (t.get(e) ?? 0) + 1;
|
|
47553
|
-
t.set(e, a), a > n && (n = a, r = e);
|
|
47554
|
-
}
|
|
47555
|
-
return r;
|
|
47556
|
-
}
|
|
47557
|
-
function $M(e, t) {
|
|
47558
|
-
let n = e.map((e) => String(e ?? "").trim()), r = n.filter((e) => e.length > 0);
|
|
47559
|
-
if (r.length === 0) return 0;
|
|
47560
|
-
let i = r.filter((e) => XM(e)).length === 0 ? 1 : 0, a = r.length / Math.max(n.length, 1), o = new Set(r.map((e) => e.toLowerCase())).size / r.length, s = r.filter((e) => e.length <= YM).length / r.length, c = t > 0 ? 1 - Math.abs(r.length - t) / t : 0;
|
|
47561
|
-
return .3 * i + .25 * a + .2 * o + .15 * s + .1 * Math.max(0, c);
|
|
47562
|
-
}
|
|
47563
|
-
function eN(e, t = 100) {
|
|
47564
|
-
if (e.length === 0) return {
|
|
47565
|
-
headerRowIndex: 0,
|
|
47566
|
-
confidence: 0
|
|
47567
|
-
};
|
|
47568
|
-
if (e.length === 1) return {
|
|
47569
|
-
headerRowIndex: 0,
|
|
47570
|
-
confidence: 1
|
|
47571
|
-
};
|
|
47572
|
-
let n = Math.min(t, e.length), r = QM(e.slice(0, n)), i = 0, a = -1;
|
|
47573
|
-
for (let t = 0; t < n; t++) {
|
|
47574
|
-
let n = $M(e[t], r);
|
|
47575
|
-
if (n > a && (a = n, i = t), t === 0 && n > .85 && ZM(e[0]) === r) break;
|
|
47576
|
-
}
|
|
47577
|
-
return {
|
|
47578
|
-
headerRowIndex: i,
|
|
47579
|
-
confidence: Math.round(a * 100) / 100
|
|
47580
|
-
};
|
|
47581
|
-
}
|
|
47582
|
-
function tN(e) {
|
|
47583
|
-
let t = /* @__PURE__ */ new Set();
|
|
47584
|
-
return e.map((e) => {
|
|
47585
|
-
let n = e, r = 2;
|
|
47586
|
-
for (; t.has(n);) n = `${e} (${r})`, r++;
|
|
47587
|
-
return t.add(n), n;
|
|
47588
|
-
});
|
|
47589
|
-
}
|
|
47590
|
-
function nN(e) {
|
|
47591
|
-
let { headerRowIndex: t } = eN(e), n = tN((e[t] ?? []).map((e) => String(e ?? "").trim())), r = [], i = [];
|
|
47592
|
-
for (let a of e.slice(t + 1)) {
|
|
47593
|
-
if (!a.some((e) => e != null && String(e).trim() !== "")) continue;
|
|
47594
|
-
let e = {};
|
|
47595
|
-
for (let t = 0; t < n.length; t++) e[n[t]] = String(a[t] ?? "");
|
|
47596
|
-
r.push(e), i.push(a.length === n.length ? null : a.map((e) => String(e ?? "")));
|
|
47597
|
-
}
|
|
47598
|
-
return {
|
|
47599
|
-
headerRowIndex: t,
|
|
47600
|
-
headers: n,
|
|
47601
|
-
rows: r,
|
|
47602
|
-
rawCells: i
|
|
47603
|
-
};
|
|
47604
|
-
}
|
|
47605
|
-
//#endregion
|
|
47606
|
-
//#region src/components/DataUploader/utils/detectMultiValueDelimiter.ts
|
|
47607
|
-
var rN = 200, iN = (e, t, n) => {
|
|
47823
|
+
}, ON = 200, kN = (e, t, n) => {
|
|
47608
47824
|
if (n) return n;
|
|
47609
47825
|
let r = new Set(t.map((e) => e.trim().toLowerCase())), i = (e) => r.has(e.trim().toLowerCase()), a = /* @__PURE__ */ new Set(), o = [];
|
|
47610
47826
|
for (let t of e) {
|
|
47611
47827
|
let e = t.trim();
|
|
47612
|
-
if (!(e === "" || a.has(e)) && (a.add(e), o.push(e), o.length >=
|
|
47828
|
+
if (!(e === "" || a.has(e)) && (a.add(e), o.push(e), o.length >= ON)) break;
|
|
47613
47829
|
}
|
|
47614
47830
|
if (o.length === 0) return null;
|
|
47615
47831
|
let s = null, c = 0, l = 0;
|
|
47616
|
-
for (let e of
|
|
47832
|
+
for (let e of NM) {
|
|
47617
47833
|
let n = 0, r = 0;
|
|
47618
47834
|
for (let a of o) {
|
|
47619
47835
|
if (i(a) || !a.includes(e)) continue;
|
|
@@ -47626,7 +47842,7 @@ var rN = 200, iN = (e, t, n) => {
|
|
|
47626
47842
|
(n > c || n === c && n > 0 && r > l) && (s = e, c = n, l = r);
|
|
47627
47843
|
}
|
|
47628
47844
|
return c > 0 ? s : null;
|
|
47629
|
-
},
|
|
47845
|
+
}, AN = (e) => {
|
|
47630
47846
|
let t = /* @__PURE__ */ new Map();
|
|
47631
47847
|
for (let [n, r] of Object.entries(e)) {
|
|
47632
47848
|
let e = Pj(n), i = t.get(e) ?? /* @__PURE__ */ new Set();
|
|
@@ -47634,8 +47850,8 @@ var rN = 200, iN = (e, t, n) => {
|
|
|
47634
47850
|
t.set(e, i);
|
|
47635
47851
|
}
|
|
47636
47852
|
return t;
|
|
47637
|
-
},
|
|
47638
|
-
let i =
|
|
47853
|
+
}, jN = (e, t, n, r) => {
|
|
47854
|
+
let i = AN(r), a = (e, t) => i.get(Pj(e))?.has(Pj(t)) ?? !1, o = new Map(n.map((e) => [e.id, e])), s = (e, t) => (n, r) => {
|
|
47639
47855
|
if (Pj(n) === Pj(r) || a(r, n)) return;
|
|
47640
47856
|
let i = `${n} ${r}`;
|
|
47641
47857
|
t.has(i) || (t.add(i), e.push({
|
|
@@ -47655,16 +47871,16 @@ var rN = 200, iN = (e, t, n) => {
|
|
|
47655
47871
|
for (let e of Object.values(t)) for (let [t, n] of Object.entries(e)) n && u(t, n);
|
|
47656
47872
|
return c;
|
|
47657
47873
|
};
|
|
47658
|
-
function
|
|
47874
|
+
function MN(e, t, n) {
|
|
47659
47875
|
let r = e.length, i = t;
|
|
47660
|
-
return i <= 0 ? [] : r === i ? [{ cells: [...e] }] : (r < i ?
|
|
47876
|
+
return i <= 0 ? [] : r === i ? [{ cells: [...e] }] : (r < i ? NN(i, i - r) : NN(r - 1, i - 1)) > 1e3 ? [] : r < i ? PN(e, i) : FN(e, i, n);
|
|
47661
47877
|
}
|
|
47662
|
-
function
|
|
47878
|
+
function NN(e, t) {
|
|
47663
47879
|
let n = Math.min(t, e - t), r = 1;
|
|
47664
47880
|
for (let t = 1; t <= n; t++) if (r = r * (e - n + t) / t, r > 1e3) return r;
|
|
47665
47881
|
return r;
|
|
47666
47882
|
}
|
|
47667
|
-
function
|
|
47883
|
+
function PN(e, t) {
|
|
47668
47884
|
let n = e.length, r = [], i = [], a = (o) => {
|
|
47669
47885
|
if (i.length === n) {
|
|
47670
47886
|
let a = Array(t).fill("");
|
|
@@ -47676,7 +47892,7 @@ function lN(e, t) {
|
|
|
47676
47892
|
};
|
|
47677
47893
|
return a(0), r;
|
|
47678
47894
|
}
|
|
47679
|
-
function
|
|
47895
|
+
function FN(e, t, n) {
|
|
47680
47896
|
let r = e.length, i = [], a = [], o = (s) => {
|
|
47681
47897
|
if (a.length === t - 1) {
|
|
47682
47898
|
let o = [
|
|
@@ -47694,27 +47910,27 @@ function uN(e, t, n) {
|
|
|
47694
47910
|
}
|
|
47695
47911
|
//#endregion
|
|
47696
47912
|
//#region src/components/DataUploader/utils/raggedRows/pruneByValidators.ts
|
|
47697
|
-
var
|
|
47698
|
-
function
|
|
47913
|
+
var IN = {};
|
|
47914
|
+
function LN(e, t) {
|
|
47699
47915
|
for (let n of t.validators ?? []) if (n.type !== "expression") {
|
|
47700
47916
|
if (n.type === "function") {
|
|
47701
|
-
if (n.fn(e,
|
|
47917
|
+
if (n.fn(e, IN) != null) return !1;
|
|
47702
47918
|
continue;
|
|
47703
47919
|
}
|
|
47704
|
-
if (Bm(n, e,
|
|
47920
|
+
if (Bm(n, e, IN) != null) return !1;
|
|
47705
47921
|
}
|
|
47706
47922
|
return !0;
|
|
47707
47923
|
}
|
|
47708
|
-
function
|
|
47709
|
-
for (let n = 0; n < t.length; n++) if (!
|
|
47924
|
+
function RN(e, t) {
|
|
47925
|
+
for (let n = 0; n < t.length; n++) if (!LN(e.cells[n] ?? "", t[n])) return !1;
|
|
47710
47926
|
return !0;
|
|
47711
47927
|
}
|
|
47712
|
-
function
|
|
47713
|
-
return e.filter((e) =>
|
|
47928
|
+
function zN(e, t) {
|
|
47929
|
+
return e.filter((e) => RN(e, t));
|
|
47714
47930
|
}
|
|
47715
47931
|
//#endregion
|
|
47716
47932
|
//#region src/components/DataUploader/utils/raggedRows/computeDisputeSpans.ts
|
|
47717
|
-
function
|
|
47933
|
+
function BN(e) {
|
|
47718
47934
|
if (e.length <= 1) return [];
|
|
47719
47935
|
let t = e[0].cells.length, n = [], r = -1;
|
|
47720
47936
|
for (let i = 0; i < t; i++) {
|
|
@@ -47731,25 +47947,25 @@ function hN(e) {
|
|
|
47731
47947
|
}
|
|
47732
47948
|
//#endregion
|
|
47733
47949
|
//#region src/components/DataUploader/utils/raggedRows/alignRow.ts
|
|
47734
|
-
function
|
|
47735
|
-
let r =
|
|
47950
|
+
function VN(e, t, n) {
|
|
47951
|
+
let r = MN(e, t.length, n), i = zN(r, t);
|
|
47736
47952
|
return i.length === 1 ? {
|
|
47737
47953
|
kind: "confident",
|
|
47738
47954
|
alignment: i[0]
|
|
47739
47955
|
} : i.length > 1 ? {
|
|
47740
47956
|
kind: "ambiguous",
|
|
47741
47957
|
candidates: i,
|
|
47742
|
-
disputeSpans:
|
|
47958
|
+
disputeSpans: BN(i)
|
|
47743
47959
|
} : {
|
|
47744
47960
|
kind: "invalid",
|
|
47745
47961
|
candidates: r,
|
|
47746
|
-
disputeSpans:
|
|
47962
|
+
disputeSpans: BN(r)
|
|
47747
47963
|
};
|
|
47748
47964
|
}
|
|
47749
47965
|
//#endregion
|
|
47750
47966
|
//#region src/components/DataUploader/utils/raggedRows/resolveRaggedRow.ts
|
|
47751
|
-
function
|
|
47752
|
-
let r =
|
|
47967
|
+
function HN(e, t, n) {
|
|
47968
|
+
let r = VN(e, t, n);
|
|
47753
47969
|
if (r.kind === "confident") return {
|
|
47754
47970
|
cells: r.alignment.cells,
|
|
47755
47971
|
conflictColumns: []
|
|
@@ -47768,111 +47984,131 @@ function _N(e, t, n) {
|
|
|
47768
47984
|
}
|
|
47769
47985
|
//#endregion
|
|
47770
47986
|
//#region src/components/DataUploader/context/useViewModel.tsx
|
|
47771
|
-
var
|
|
47987
|
+
var UN = 5e3, WN = 15, GN = 20, KN = new Set([
|
|
47772
47988
|
"xlsx",
|
|
47773
47989
|
"xls",
|
|
47774
47990
|
"xlsb",
|
|
47775
47991
|
"ods"
|
|
47776
47992
|
]);
|
|
47777
|
-
function
|
|
47993
|
+
function qN() {
|
|
47778
47994
|
let { store: e, validator: t, columns: n, primaryKey: r, setShowUploader: i, pendingImportFile: a, setPendingImportFile: o, onColumnMatch: s, onValueMatch: c, synonyms: l, addDynamicColumns: u, scaleClient: d } = th(), { t: f } = j(), [p, m] = (0, y.useState)(0), [h, g] = (0, y.useState)(0), [_, v] = (0, y.useState)(null), [b, x] = (0, y.useState)({}), S = (0, y.useMemo)(() => {
|
|
47779
47995
|
let e = new Set(Object.values(b).filter(Boolean));
|
|
47780
47996
|
return n.filter((t) => t.unique && e.has(t.id));
|
|
47781
|
-
}, [b, n]), [C, w] = (0, y.useState)(() => r), [T, E] = (0, y.useState)(!1), [D, k] = (0, y.useState)(!1), [A, M] = (0, y.useState)(null), [N, P] = (0, y.useState)([]), [F, I] = (0, y.useState)(null), [L, R] = (0, y.useState)([]), [ee, z] = (0, y.useState)({}), [B, V] = (0, y.useState)([]), [H, te] = (0, y.useState)({}), ne = (0, y.useRef)(null), [re, ie] = (0, y.useState)(
|
|
47997
|
+
}, [b, n]), [C, w] = (0, y.useState)(() => r), [T, E] = (0, y.useState)(!1), [D, k] = (0, y.useState)(!1), [A, M] = (0, y.useState)(null), [N, P] = (0, y.useState)([]), [F, I] = (0, y.useState)(null), [L, R] = (0, y.useState)([]), [ee, z] = (0, y.useState)({}), [B, V] = (0, y.useState)([]), [H, te] = (0, y.useState)({}), ne = (0, y.useRef)(null), [re, ie] = (0, y.useState)(-1), ae = (0, y.useCallback)((e, t) => t ? f("dataEditor.uploader.matchColumns.syntheticColumnValue", {
|
|
47998
|
+
index: e + 1,
|
|
47999
|
+
value: t
|
|
48000
|
+
}) : f("dataEditor.uploader.matchColumns.syntheticColumn", { index: e + 1 }), [f]), oe = (0, y.useMemo)(() => _ ? VM(_.detection, re) : 0, [_, re]), U = (0, y.useMemo)(() => _ ? HM(_.rawRows, re, oe, ae) : [], [
|
|
48001
|
+
_,
|
|
48002
|
+
re,
|
|
48003
|
+
oe,
|
|
48004
|
+
ae
|
|
48005
|
+
]), se = (0, y.useCallback)((e) => {
|
|
47782
48006
|
D || w(e);
|
|
47783
|
-
}, [D]),
|
|
47784
|
-
|
|
47785
|
-
let
|
|
47786
|
-
(0, y.useEffect)(() => () =>
|
|
47787
|
-
let
|
|
48007
|
+
}, [D]), ce = (0, y.useRef)(null);
|
|
48008
|
+
ce.current ||= new Bh();
|
|
48009
|
+
let le = ce.current;
|
|
48010
|
+
(0, y.useEffect)(() => () => le.dispose(), [le]);
|
|
48011
|
+
let ue = (0, y.useMemo)(() => {
|
|
47788
48012
|
let e = new Set(Object.values(b).filter(Boolean));
|
|
47789
48013
|
return n.some((t) => t.editor?.type === "select" && e.has(t.id));
|
|
47790
|
-
}, [b, n]), [
|
|
48014
|
+
}, [b, n]), [de] = (0, y.useState)(() => e.getLocalRowCount() > 0), fe = (0, y.useMemo)(() => {
|
|
47791
48015
|
let e = [{
|
|
47792
48016
|
id: "select-files",
|
|
47793
48017
|
title: f("dataEditor.uploader.steps.selectFiles"),
|
|
47794
|
-
content: /* @__PURE__ */ (0, O.jsx)(
|
|
48018
|
+
content: /* @__PURE__ */ (0, O.jsx)(SN, {})
|
|
47795
48019
|
}];
|
|
47796
48020
|
return N.length > 1 && e.push({
|
|
47797
48021
|
id: "sheet-selection",
|
|
47798
48022
|
title: f("dataEditor.uploader.steps.sheetSelection"),
|
|
47799
|
-
content: /* @__PURE__ */ (0, O.jsx)(
|
|
48023
|
+
content: /* @__PURE__ */ (0, O.jsx)(wN, {})
|
|
48024
|
+
}), _ && _.detection.review.kind !== "none" && e.push({
|
|
48025
|
+
id: "header-selection",
|
|
48026
|
+
title: f("dataEditor.uploader.steps.headerSelection"),
|
|
48027
|
+
content: /* @__PURE__ */ (0, O.jsx)(jM, {})
|
|
47800
48028
|
}), e.push({
|
|
47801
48029
|
id: "column-matching",
|
|
47802
48030
|
title: f("dataEditor.uploader.steps.matchColumns"),
|
|
47803
48031
|
content: /* @__PURE__ */ (0, O.jsx)(sM, {})
|
|
47804
|
-
}),
|
|
48032
|
+
}), ue && e.push({
|
|
47805
48033
|
id: "match-values",
|
|
47806
48034
|
title: f("dataEditor.uploader.steps.matchValues"),
|
|
47807
|
-
content: /* @__PURE__ */ (0, O.jsx)(
|
|
47808
|
-
}), S.length > 0 &&
|
|
48035
|
+
content: /* @__PURE__ */ (0, O.jsx)(sN, {})
|
|
48036
|
+
}), S.length > 0 && de && e.push({
|
|
47809
48037
|
id: "primary-key",
|
|
47810
48038
|
title: f("dataEditor.uploader.steps.primaryKey"),
|
|
47811
|
-
content: /* @__PURE__ */ (0, O.jsx)(
|
|
48039
|
+
content: /* @__PURE__ */ (0, O.jsx)(uN, {})
|
|
47812
48040
|
}), e;
|
|
47813
48041
|
}, [
|
|
47814
48042
|
S.length,
|
|
47815
48043
|
N.length,
|
|
47816
|
-
|
|
47817
|
-
|
|
48044
|
+
ue,
|
|
48045
|
+
de,
|
|
48046
|
+
_,
|
|
47818
48047
|
f
|
|
47819
|
-
]),
|
|
47820
|
-
e >= 0 && e <
|
|
47821
|
-
}, [
|
|
48048
|
+
]), pe = (0, y.useCallback)((e) => {
|
|
48049
|
+
e >= 0 && e < fe.length && m(e);
|
|
48050
|
+
}, [fe.length]), me = (0, y.useCallback)(() => {
|
|
47822
48051
|
m((e) => {
|
|
47823
|
-
let t = Math.min(e + 1,
|
|
48052
|
+
let t = Math.min(e + 1, fe.length - 1);
|
|
47824
48053
|
return g((e) => Math.max(e, t)), t;
|
|
47825
48054
|
});
|
|
47826
|
-
}, [
|
|
48055
|
+
}, [fe.length]), he = (0, y.useCallback)(() => {
|
|
47827
48056
|
m((e) => Math.max(e - 1, 0));
|
|
47828
|
-
}, []),
|
|
47829
|
-
v(e), E(!1)
|
|
48057
|
+
}, []), ge = p === 0, _e = p === fe.length - 1, ve = (0, y.useCallback)((e) => {
|
|
48058
|
+
v(e), E(!1);
|
|
48059
|
+
}, []), ye = (0, y.useRef)(0);
|
|
48060
|
+
(0, y.useEffect)(() => {
|
|
48061
|
+
if (!_ || U.length === 0) return;
|
|
48062
|
+
let e = ++ye.current;
|
|
48063
|
+
Xj(U, n, s, l).then((t) => {
|
|
48064
|
+
ye.current === e && x(t);
|
|
48065
|
+
});
|
|
47830
48066
|
}, [
|
|
48067
|
+
_,
|
|
48068
|
+
U,
|
|
47831
48069
|
n,
|
|
47832
48070
|
s,
|
|
47833
48071
|
l
|
|
47834
|
-
])
|
|
47835
|
-
|
|
47836
|
-
|
|
48072
|
+
]);
|
|
48073
|
+
let be = (0, y.useCallback)(() => {
|
|
48074
|
+
le.cancel(), v(null), E(!1), x({}), V([]), te({}), ne.current = null, ie(-1), M(null), P([]), I(null), R([]);
|
|
48075
|
+
}, [le]), xe = (0, y.useCallback)((e, t, n) => {
|
|
47837
48076
|
M(e), P(t), I(t[0]), R(n), E(!1);
|
|
47838
|
-
}, []),
|
|
47839
|
-
!A || !F || (E(!0),
|
|
48077
|
+
}, []), Se = (0, y.useCallback)(() => {
|
|
48078
|
+
!A || !F || (E(!0), le.parse(A, {
|
|
47840
48079
|
format: "xlsx",
|
|
47841
48080
|
sheetName: F
|
|
47842
48081
|
}).then((e) => {
|
|
47843
48082
|
if (e.kind !== "rows") return;
|
|
47844
|
-
let t =
|
|
47845
|
-
ie(t.headerRowIndex),
|
|
48083
|
+
let t = wM(e.rows);
|
|
48084
|
+
ie(t.headerRowIndex), ve({
|
|
47846
48085
|
fileName: A.name,
|
|
47847
|
-
|
|
47848
|
-
|
|
47849
|
-
isParsing: !1,
|
|
47850
|
-
rawCells: t.rawCells,
|
|
48086
|
+
rawRows: e.rows,
|
|
48087
|
+
detection: t,
|
|
47851
48088
|
delimiter: ","
|
|
47852
|
-
}),
|
|
48089
|
+
}), me();
|
|
47853
48090
|
}).catch(() => {
|
|
47854
48091
|
E(!1);
|
|
47855
48092
|
}));
|
|
47856
48093
|
}, [
|
|
47857
48094
|
A,
|
|
47858
48095
|
F,
|
|
47859
|
-
|
|
47860
|
-
|
|
47861
|
-
|
|
47862
|
-
|
|
48096
|
+
le,
|
|
48097
|
+
ve,
|
|
48098
|
+
me,
|
|
48099
|
+
ae
|
|
48100
|
+
]), Ce = (0, y.useCallback)(async (t) => {
|
|
47863
48101
|
try {
|
|
47864
|
-
let e = await
|
|
48102
|
+
let e = await le.parse(t, { format: "csv" });
|
|
47865
48103
|
if (e.kind !== "rows") {
|
|
47866
48104
|
E(!1);
|
|
47867
48105
|
return;
|
|
47868
48106
|
}
|
|
47869
|
-
let n =
|
|
47870
|
-
if (ie(n.headerRowIndex),
|
|
48107
|
+
let n = wM(e.rows);
|
|
48108
|
+
if (ie(n.headerRowIndex), ve({
|
|
47871
48109
|
fileName: t.name,
|
|
47872
|
-
|
|
47873
|
-
|
|
47874
|
-
isParsing: !1,
|
|
47875
|
-
rawCells: n.rawCells,
|
|
48110
|
+
rawRows: e.rows,
|
|
48111
|
+
detection: n,
|
|
47876
48112
|
delimiter: e.delimiter
|
|
47877
48113
|
}), e.errors.length > 0) {
|
|
47878
48114
|
let t = e.errors.slice(0, 3).map((e) => e.row == null ? "?" : String(e.row + 1)).join(", ");
|
|
@@ -47890,20 +48126,20 @@ function SN() {
|
|
|
47890
48126
|
});
|
|
47891
48127
|
}
|
|
47892
48128
|
}, [
|
|
47893
|
-
|
|
47894
|
-
|
|
48129
|
+
le,
|
|
48130
|
+
ve,
|
|
47895
48131
|
E,
|
|
47896
48132
|
e,
|
|
47897
|
-
f
|
|
47898
|
-
|
|
48133
|
+
f,
|
|
48134
|
+
ae
|
|
48135
|
+
]), we = (0, y.useCallback)(async (t) => {
|
|
47899
48136
|
try {
|
|
47900
|
-
let e = await
|
|
48137
|
+
let e = await le.parse(t, { format: "json" });
|
|
47901
48138
|
if (e.kind !== "records") return;
|
|
47902
|
-
|
|
48139
|
+
ie(0), ve({
|
|
47903
48140
|
fileName: t.name,
|
|
47904
|
-
|
|
47905
|
-
|
|
47906
|
-
isParsing: !1
|
|
48141
|
+
rawRows: WM(e.headers, e.rows),
|
|
48142
|
+
detection: UM()
|
|
47907
48143
|
});
|
|
47908
48144
|
} catch (t) {
|
|
47909
48145
|
E(!1), e.errorHandler.handleError({
|
|
@@ -47914,19 +48150,18 @@ function SN() {
|
|
|
47914
48150
|
});
|
|
47915
48151
|
}
|
|
47916
48152
|
}, [
|
|
47917
|
-
|
|
47918
|
-
|
|
48153
|
+
le,
|
|
48154
|
+
ve,
|
|
47919
48155
|
E,
|
|
47920
48156
|
e
|
|
47921
|
-
]),
|
|
48157
|
+
]), Te = (0, y.useCallback)(async (t) => {
|
|
47922
48158
|
try {
|
|
47923
|
-
let e = await
|
|
48159
|
+
let e = await le.parse(t, { format: "xml" });
|
|
47924
48160
|
if (e.kind !== "records") return;
|
|
47925
|
-
|
|
48161
|
+
ie(0), ve({
|
|
47926
48162
|
fileName: t.name,
|
|
47927
|
-
|
|
47928
|
-
|
|
47929
|
-
isParsing: !1
|
|
48163
|
+
rawRows: WM(e.headers, e.rows),
|
|
48164
|
+
detection: UM()
|
|
47930
48165
|
});
|
|
47931
48166
|
} catch (t) {
|
|
47932
48167
|
E(!1), e.errorHandler.handleError({
|
|
@@ -47937,33 +48172,31 @@ function SN() {
|
|
|
47937
48172
|
});
|
|
47938
48173
|
}
|
|
47939
48174
|
}, [
|
|
47940
|
-
|
|
47941
|
-
|
|
48175
|
+
le,
|
|
48176
|
+
ve,
|
|
47942
48177
|
E,
|
|
47943
48178
|
e
|
|
47944
|
-
]),
|
|
47945
|
-
|
|
48179
|
+
]), Ee = (0, y.useCallback)((t) => {
|
|
48180
|
+
le.parse(t, { format: "xlsx" }).then((e) => {
|
|
47946
48181
|
if (e.kind === "sheets") {
|
|
47947
48182
|
let n = e.sheets.map((e) => {
|
|
47948
|
-
let
|
|
48183
|
+
let t = wM(e.rows), n = VM(t, t.headerRowIndex), r = HM(e.rows, t.headerRowIndex, n, ae);
|
|
47949
48184
|
return {
|
|
47950
48185
|
name: e.name,
|
|
47951
|
-
headers:
|
|
47952
|
-
rows:
|
|
48186
|
+
headers: r,
|
|
48187
|
+
rows: JM(e.rows, r, n, WN),
|
|
47953
48188
|
totalRows: e.totalRows - 1
|
|
47954
48189
|
};
|
|
47955
48190
|
});
|
|
47956
|
-
|
|
48191
|
+
xe(t, e.sheets.map((e) => e.name), n);
|
|
47957
48192
|
return;
|
|
47958
48193
|
}
|
|
47959
48194
|
if (e.kind !== "rows") return;
|
|
47960
|
-
let n =
|
|
47961
|
-
ie(n.headerRowIndex),
|
|
48195
|
+
let n = wM(e.rows);
|
|
48196
|
+
ie(n.headerRowIndex), ve({
|
|
47962
48197
|
fileName: t.name,
|
|
47963
|
-
|
|
47964
|
-
|
|
47965
|
-
isParsing: !1,
|
|
47966
|
-
rawCells: n.rawCells,
|
|
48198
|
+
rawRows: e.rows,
|
|
48199
|
+
detection: n,
|
|
47967
48200
|
delimiter: ","
|
|
47968
48201
|
});
|
|
47969
48202
|
}).catch((t) => {
|
|
@@ -47975,39 +48208,40 @@ function SN() {
|
|
|
47975
48208
|
}), E(!1);
|
|
47976
48209
|
});
|
|
47977
48210
|
}, [
|
|
47978
|
-
|
|
47979
|
-
|
|
47980
|
-
|
|
48211
|
+
le,
|
|
48212
|
+
ve,
|
|
48213
|
+
xe,
|
|
47981
48214
|
E,
|
|
47982
|
-
e
|
|
47983
|
-
|
|
48215
|
+
e,
|
|
48216
|
+
ae
|
|
48217
|
+
]), De = (0, y.useCallback)((e) => {
|
|
47984
48218
|
E(!0), ne.current = e;
|
|
47985
48219
|
let t = e.name.split(".").pop()?.toLowerCase();
|
|
47986
|
-
t &&
|
|
48220
|
+
t && KN.has(t) ? Ee(e) : t === "json" ? we(e) : t === "xml" ? Te(e) : Ce(e);
|
|
47987
48221
|
}, [
|
|
47988
|
-
|
|
47989
|
-
|
|
47990
|
-
|
|
47991
|
-
|
|
48222
|
+
Ce,
|
|
48223
|
+
we,
|
|
48224
|
+
Ee,
|
|
48225
|
+
Te,
|
|
47992
48226
|
E
|
|
47993
48227
|
]);
|
|
47994
48228
|
(0, y.useEffect)(() => {
|
|
47995
|
-
a && (
|
|
48229
|
+
a && (De(a), o(null));
|
|
47996
48230
|
}, [
|
|
47997
48231
|
a,
|
|
47998
48232
|
o,
|
|
47999
|
-
|
|
48233
|
+
De
|
|
48000
48234
|
]);
|
|
48001
|
-
let [
|
|
48002
|
-
|
|
48003
|
-
}, []),
|
|
48004
|
-
|
|
48235
|
+
let [Oe, ke] = (0, y.useState)(null), [Ae, je] = (0, y.useState)(null), Me = (0, y.useCallback)(() => {
|
|
48236
|
+
je(null);
|
|
48237
|
+
}, []), Ne = (0, y.useCallback)(async (e) => {
|
|
48238
|
+
ke(e.id), je(null);
|
|
48005
48239
|
try {
|
|
48006
48240
|
let t = await e.fetch();
|
|
48007
|
-
if (t instanceof File)
|
|
48241
|
+
if (t instanceof File) De(t);
|
|
48008
48242
|
else if (Array.isArray(t)) {
|
|
48009
48243
|
if (t.length === 0) {
|
|
48010
|
-
|
|
48244
|
+
je(f("dataEditor.uploader.remoteSources.emptyData"));
|
|
48011
48245
|
return;
|
|
48012
48246
|
}
|
|
48013
48247
|
let n = Object.keys(t[0]), r = t.map((e) => {
|
|
@@ -48018,23 +48252,22 @@ function SN() {
|
|
|
48018
48252
|
}
|
|
48019
48253
|
return t;
|
|
48020
48254
|
});
|
|
48021
|
-
|
|
48255
|
+
ie(0), ve({
|
|
48022
48256
|
fileName: e.label,
|
|
48023
|
-
|
|
48024
|
-
|
|
48025
|
-
isParsing: !1
|
|
48257
|
+
rawRows: WM(n, r),
|
|
48258
|
+
detection: UM()
|
|
48026
48259
|
});
|
|
48027
48260
|
}
|
|
48028
48261
|
} catch (e) {
|
|
48029
|
-
|
|
48262
|
+
je(e instanceof Error ? e.message : String(e));
|
|
48030
48263
|
} finally {
|
|
48031
|
-
|
|
48264
|
+
ke(null);
|
|
48032
48265
|
}
|
|
48033
48266
|
}, [
|
|
48034
|
-
|
|
48035
|
-
|
|
48267
|
+
De,
|
|
48268
|
+
ve,
|
|
48036
48269
|
f
|
|
48037
|
-
]),
|
|
48270
|
+
]), Pe = (0, y.useCallback)((e, t) => {
|
|
48038
48271
|
x((n) => {
|
|
48039
48272
|
let r = {
|
|
48040
48273
|
...n,
|
|
@@ -48043,52 +48276,50 @@ function SN() {
|
|
|
48043
48276
|
if (t) for (let n in r) n !== e && r[n] === t && (r[n] = void 0);
|
|
48044
48277
|
return r;
|
|
48045
48278
|
});
|
|
48046
|
-
}, []), [
|
|
48279
|
+
}, []), [Fe, Ie] = (0, y.useState)({}), [Le, Re] = (0, y.useState)({}), ze = (0, y.useRef)(0);
|
|
48047
48280
|
(0, y.useEffect)(() => {
|
|
48048
48281
|
if (!_) {
|
|
48049
|
-
|
|
48282
|
+
Ie({}), Re({});
|
|
48050
48283
|
return;
|
|
48051
48284
|
}
|
|
48052
48285
|
if (D) return;
|
|
48053
|
-
let e = {}, t = {};
|
|
48054
|
-
for (let [
|
|
48055
|
-
if (!
|
|
48056
|
-
let
|
|
48057
|
-
if (!
|
|
48058
|
-
let
|
|
48059
|
-
if (
|
|
48060
|
-
let
|
|
48061
|
-
|
|
48062
|
-
|
|
48063
|
-
|
|
48064
|
-
|
|
48065
|
-
|
|
48066
|
-
let
|
|
48067
|
-
|
|
48068
|
-
|
|
48069
|
-
for (let e of c) {
|
|
48070
|
-
let t = o.has(e.trim().toLowerCase()), n = r && !t ? e.split(r) : [e];
|
|
48286
|
+
let e = {}, t = {}, r = GM(U);
|
|
48287
|
+
for (let [i, a] of Object.entries(b)) {
|
|
48288
|
+
if (!a) continue;
|
|
48289
|
+
let o = n.find((e) => e.id === a);
|
|
48290
|
+
if (!o?.editor) continue;
|
|
48291
|
+
let s = o.editor.type;
|
|
48292
|
+
if (s !== "select" && s !== "multiselect") continue;
|
|
48293
|
+
let c = o.editor.options, l = r.get(i);
|
|
48294
|
+
if (l === void 0) continue;
|
|
48295
|
+
let u = KM(_.rawRows, oe, l);
|
|
48296
|
+
if (s === "multiselect") {
|
|
48297
|
+
let n = o.editor.delimiter, r = kN(u, c, n);
|
|
48298
|
+
t[a] = r;
|
|
48299
|
+
let i = new Set(c.map((e) => e.trim().toLowerCase())), s = /* @__PURE__ */ new Set();
|
|
48300
|
+
for (let e of u) {
|
|
48301
|
+
let t = i.has(e.trim().toLowerCase()), n = r && !t ? e.split(r) : [e];
|
|
48071
48302
|
for (let e of n) {
|
|
48072
48303
|
let t = e.trim();
|
|
48073
|
-
t !== "" &&
|
|
48304
|
+
t !== "" && s.add(t);
|
|
48074
48305
|
}
|
|
48075
48306
|
}
|
|
48076
|
-
e[
|
|
48077
|
-
importedValues: Array.from(
|
|
48078
|
-
options:
|
|
48307
|
+
e[a] = {
|
|
48308
|
+
importedValues: Array.from(s),
|
|
48309
|
+
options: c
|
|
48079
48310
|
};
|
|
48080
|
-
} else e[
|
|
48081
|
-
importedValues: Array.from(new Set(
|
|
48082
|
-
options:
|
|
48311
|
+
} else e[a] = {
|
|
48312
|
+
importedValues: Array.from(new Set(u)),
|
|
48313
|
+
options: c
|
|
48083
48314
|
};
|
|
48084
48315
|
}
|
|
48085
|
-
if (
|
|
48086
|
-
|
|
48316
|
+
if (Re(t), Object.keys(e).length === 0) {
|
|
48317
|
+
Ie({});
|
|
48087
48318
|
return;
|
|
48088
48319
|
}
|
|
48089
|
-
let
|
|
48320
|
+
let i = ++ze.current;
|
|
48090
48321
|
Kj(e, c, l).then((e) => {
|
|
48091
|
-
|
|
48322
|
+
ze.current === i && Ie(e);
|
|
48092
48323
|
});
|
|
48093
48324
|
}, [
|
|
48094
48325
|
_,
|
|
@@ -48096,16 +48327,18 @@ function SN() {
|
|
|
48096
48327
|
n,
|
|
48097
48328
|
c,
|
|
48098
48329
|
l,
|
|
48099
|
-
D
|
|
48330
|
+
D,
|
|
48331
|
+
U,
|
|
48332
|
+
oe
|
|
48100
48333
|
]);
|
|
48101
|
-
let
|
|
48334
|
+
let Be = (0, y.useMemo)(() => {
|
|
48102
48335
|
let e = {};
|
|
48103
|
-
for (let [t, n] of Object.entries(
|
|
48336
|
+
for (let [t, n] of Object.entries(Fe)) e[t] = {
|
|
48104
48337
|
...n,
|
|
48105
48338
|
...ee[t]
|
|
48106
48339
|
};
|
|
48107
48340
|
return e;
|
|
48108
|
-
}, [
|
|
48341
|
+
}, [Fe, ee]), Ve = (0, y.useCallback)((e, t, n) => {
|
|
48109
48342
|
z((r) => ({
|
|
48110
48343
|
...r,
|
|
48111
48344
|
[e]: {
|
|
@@ -48113,30 +48346,29 @@ function SN() {
|
|
|
48113
48346
|
[t]: n
|
|
48114
48347
|
}
|
|
48115
48348
|
}));
|
|
48116
|
-
}, []),
|
|
48117
|
-
|
|
48349
|
+
}, []), He = (0, y.useCallback)((e, t) => {
|
|
48350
|
+
Re((n) => ({
|
|
48118
48351
|
...n,
|
|
48119
48352
|
[e]: t
|
|
48120
48353
|
}));
|
|
48121
|
-
}, []),
|
|
48354
|
+
}, []), Ue = (0, y.useCallback)((e) => {
|
|
48122
48355
|
if (!_) return;
|
|
48123
48356
|
let t = Object.keys(b).find((t) => b[t] === e);
|
|
48124
48357
|
if (!t) return;
|
|
48125
48358
|
let r = n.find((t) => t.id === e);
|
|
48126
48359
|
if (r?.editor?.type !== "multiselect") return;
|
|
48127
|
-
let i =
|
|
48128
|
-
|
|
48129
|
-
|
|
48130
|
-
|
|
48131
|
-
}
|
|
48132
|
-
let a = r.editor.delimiter;
|
|
48133
|
-
Re(e, iN(i, r.editor.options, a));
|
|
48360
|
+
let i = GM(U).get(t);
|
|
48361
|
+
if (i === void 0) return;
|
|
48362
|
+
let a = KM(_.rawRows, oe, i), o = r.editor.delimiter;
|
|
48363
|
+
He(e, kN(a, r.editor.options, o));
|
|
48134
48364
|
}, [
|
|
48135
48365
|
_,
|
|
48136
48366
|
b,
|
|
48137
48367
|
n,
|
|
48138
|
-
|
|
48139
|
-
|
|
48368
|
+
He,
|
|
48369
|
+
U,
|
|
48370
|
+
oe
|
|
48371
|
+
]), We = (0, y.useCallback)((e, t) => {
|
|
48140
48372
|
te((n) => {
|
|
48141
48373
|
let r = n[e] ?? [];
|
|
48142
48374
|
return r.includes(t) ? n : {
|
|
@@ -48144,36 +48376,38 @@ function SN() {
|
|
|
48144
48376
|
[e]: [...r, t]
|
|
48145
48377
|
};
|
|
48146
48378
|
});
|
|
48147
|
-
}, []),
|
|
48379
|
+
}, []), Ge = (0, y.useCallback)((e) => {
|
|
48148
48380
|
let t = [];
|
|
48149
48381
|
for (let [r, i] of Object.entries(b)) !i || e.has(i) || n.find((e) => e.id === i)?.editor?.type === "date" && t.push(r);
|
|
48150
48382
|
return t;
|
|
48151
|
-
}, [b, n]),
|
|
48152
|
-
let e = new Set(B.map((e) => e.id)), t =
|
|
48383
|
+
}, [b, n]), Ke = (0, y.useCallback)(() => {
|
|
48384
|
+
let e = new Set(B.map((e) => e.id)), t = TN(b, n, e), i = _ ? JM(_.rawRows, U, oe, 1e3) : [], a = rp(i, EN(t)), o = cp(i, Ge(e));
|
|
48153
48385
|
return {
|
|
48154
48386
|
columnMapping: b,
|
|
48155
|
-
valueMapping:
|
|
48387
|
+
valueMapping: Be,
|
|
48156
48388
|
primaryKey: C ?? r,
|
|
48157
48389
|
selectedSheet: F ?? void 0,
|
|
48158
48390
|
headerRowIndex: re,
|
|
48159
|
-
numberFormat:
|
|
48391
|
+
numberFormat: a,
|
|
48160
48392
|
dateFormat: o,
|
|
48161
48393
|
newColumns: B
|
|
48162
48394
|
};
|
|
48163
48395
|
}, [
|
|
48164
48396
|
_,
|
|
48165
48397
|
b,
|
|
48166
|
-
|
|
48398
|
+
Be,
|
|
48167
48399
|
C,
|
|
48168
48400
|
F,
|
|
48169
48401
|
r,
|
|
48170
48402
|
re,
|
|
48403
|
+
U,
|
|
48404
|
+
oe,
|
|
48171
48405
|
B,
|
|
48172
48406
|
n,
|
|
48173
|
-
|
|
48174
|
-
]),
|
|
48407
|
+
Ge
|
|
48408
|
+
]), qe = (0, y.useCallback)(async () => {
|
|
48175
48409
|
if (!ne.current || !d?.onFileImport) return;
|
|
48176
|
-
let t = new AbortController(), n =
|
|
48410
|
+
let t = new AbortController(), n = Ke();
|
|
48177
48411
|
await d.onFileImport({
|
|
48178
48412
|
file: ne.current,
|
|
48179
48413
|
mappings: n,
|
|
@@ -48182,49 +48416,59 @@ function SN() {
|
|
|
48182
48416
|
}), e.reloadServerData();
|
|
48183
48417
|
}, [
|
|
48184
48418
|
d,
|
|
48185
|
-
|
|
48419
|
+
Ke,
|
|
48186
48420
|
e
|
|
48187
|
-
]),
|
|
48421
|
+
]), Je = (0, y.useCallback)(async () => {
|
|
48188
48422
|
if (!_ || !d?.onRowsImport) return;
|
|
48189
48423
|
let t = _;
|
|
48190
48424
|
v(null);
|
|
48191
|
-
let r = crypto.randomUUID(), i =
|
|
48425
|
+
let r = crypto.randomUUID(), i = Ke(), a = new AbortController(), o = d.importChunkSize ?? UN, s = TN(b, n, new Set(B.map((e) => e.id))), c = {
|
|
48192
48426
|
numberFormat: i.numberFormat,
|
|
48193
48427
|
dateFormat: i.dateFormat,
|
|
48194
48428
|
monthTable: op(f),
|
|
48195
|
-
valueMapping:
|
|
48196
|
-
multiselectDelimiters:
|
|
48197
|
-
}, l = t.
|
|
48198
|
-
for (;
|
|
48199
|
-
let
|
|
48200
|
-
|
|
48201
|
-
|
|
48429
|
+
valueMapping: Be,
|
|
48430
|
+
multiselectDelimiters: Le
|
|
48431
|
+
}, l = U, u = t.rawRows, p = [];
|
|
48432
|
+
for (let e = oe; e < u.length; e++) {
|
|
48433
|
+
let t = u[e];
|
|
48434
|
+
t && !LM(t) && p.push(e);
|
|
48435
|
+
}
|
|
48436
|
+
let m = 0;
|
|
48437
|
+
for (; m < p.length;) {
|
|
48438
|
+
let e = Math.min(m + o, p.length), n = [];
|
|
48439
|
+
for (let t = m; t < e; t++) {
|
|
48440
|
+
let e = qM(u[p[t]] ?? [], l);
|
|
48441
|
+
n.push(DN(e, s, c));
|
|
48442
|
+
}
|
|
48443
|
+
let f = e >= p.length, h = Math.floor(m / o);
|
|
48202
48444
|
await d.onRowsImport({
|
|
48203
48445
|
importId: r,
|
|
48204
48446
|
sourceName: t.fileName,
|
|
48205
|
-
chunkIndex:
|
|
48447
|
+
chunkIndex: h,
|
|
48206
48448
|
isLastChunk: f,
|
|
48207
48449
|
rows: n,
|
|
48208
|
-
newColumns:
|
|
48450
|
+
newColumns: h === 0 && B.length > 0 ? B : void 0,
|
|
48209
48451
|
primaryKey: i.primaryKey,
|
|
48210
48452
|
signal: a.signal
|
|
48211
48453
|
});
|
|
48212
|
-
for (let t =
|
|
48213
|
-
|
|
48454
|
+
for (let t = m; t < e; t++) u[p[t]] = void 0;
|
|
48455
|
+
m = e;
|
|
48214
48456
|
}
|
|
48215
48457
|
e.reloadServerData();
|
|
48216
48458
|
}, [
|
|
48217
48459
|
_,
|
|
48218
48460
|
d,
|
|
48219
|
-
|
|
48461
|
+
Ke,
|
|
48220
48462
|
b,
|
|
48221
48463
|
B,
|
|
48222
48464
|
n,
|
|
48223
|
-
|
|
48224
|
-
|
|
48465
|
+
U,
|
|
48466
|
+
oe,
|
|
48467
|
+
Be,
|
|
48468
|
+
Le,
|
|
48225
48469
|
e,
|
|
48226
48470
|
f
|
|
48227
|
-
]),
|
|
48471
|
+
]), W = (0, y.useCallback)(() => new Promise((r) => {
|
|
48228
48472
|
if (!_) {
|
|
48229
48473
|
r();
|
|
48230
48474
|
return;
|
|
@@ -48235,47 +48479,52 @@ function SN() {
|
|
|
48235
48479
|
B.length > 0 && u(B);
|
|
48236
48480
|
for (let [t, n] of Object.entries(H)) e.addColumnOptions(t, n);
|
|
48237
48481
|
let o = e.registerSource({ name: i.fileName });
|
|
48238
|
-
e.setSourceLoading(o, !0), e.recordLearnedSynonyms(
|
|
48239
|
-
let s =
|
|
48240
|
-
|
|
48241
|
-
|
|
48482
|
+
e.setSourceLoading(o, !0), e.recordLearnedSynonyms(jN(b, Be, [...n, ...B], Mj(jj, l)));
|
|
48483
|
+
let s = U, c = i.delimiter ?? ",", d = i.rawRows, p = [];
|
|
48484
|
+
for (let e = oe; e < d.length; e++) {
|
|
48485
|
+
let t = d[e];
|
|
48486
|
+
t && !LM(t) && p.push(e);
|
|
48487
|
+
}
|
|
48488
|
+
let m = JM(i.rawRows, s, oe, 1e3), h = TN(b, n, a), g = {
|
|
48489
|
+
numberFormat: rp(m, EN(h)),
|
|
48490
|
+
dateFormat: cp(m, Ge(a)),
|
|
48242
48491
|
monthTable: op(f),
|
|
48243
|
-
valueMapping:
|
|
48244
|
-
multiselectDelimiters:
|
|
48245
|
-
},
|
|
48492
|
+
valueMapping: Be,
|
|
48493
|
+
multiselectDelimiters: Le
|
|
48494
|
+
}, _ = s.map((e) => {
|
|
48246
48495
|
let t = b[e];
|
|
48247
48496
|
return (t ? n.find((e) => e.id === t) : void 0) ?? {
|
|
48248
48497
|
id: e,
|
|
48249
48498
|
title: e
|
|
48250
48499
|
};
|
|
48251
|
-
}),
|
|
48252
|
-
let n = Math.min(
|
|
48253
|
-
for (let e =
|
|
48254
|
-
let t = d[e], n =
|
|
48255
|
-
if (
|
|
48256
|
-
let { cells: r, conflictColumns: i } =
|
|
48500
|
+
}), v = 0, y = () => {
|
|
48501
|
+
let n = Math.min(v + UN, p.length), i = [], a = [];
|
|
48502
|
+
for (let e = v; e < n; e++) {
|
|
48503
|
+
let t = d[p[e]] ?? [], n = qM(t, s);
|
|
48504
|
+
if (t.length !== s.length) {
|
|
48505
|
+
let { cells: r, conflictColumns: i } = HN(t.map((e) => String(e ?? "")), _, c);
|
|
48257
48506
|
if (r.length) {
|
|
48258
48507
|
let e = {};
|
|
48259
|
-
for (let t = 0; t <
|
|
48260
|
-
|
|
48508
|
+
for (let t = 0; t < s.length; t++) e[s[t]] = r[t] ?? "";
|
|
48509
|
+
n = e;
|
|
48261
48510
|
}
|
|
48262
48511
|
if (i.length) {
|
|
48263
48512
|
let t = [];
|
|
48264
48513
|
for (let e of i) {
|
|
48265
|
-
let n = b[
|
|
48514
|
+
let n = b[s[e]];
|
|
48266
48515
|
n && t.push(n);
|
|
48267
48516
|
}
|
|
48268
48517
|
t.length && a.push({
|
|
48269
|
-
localIndex: e -
|
|
48518
|
+
localIndex: e - v,
|
|
48270
48519
|
columnIds: t
|
|
48271
48520
|
});
|
|
48272
48521
|
}
|
|
48273
48522
|
}
|
|
48274
|
-
i.push(
|
|
48523
|
+
i.push(DN(n, h, g));
|
|
48275
48524
|
}
|
|
48276
48525
|
let { rows: l, rowIds: u } = e.upsertRows(o, i, { anchorKey: C ?? void 0 });
|
|
48277
|
-
for (let e =
|
|
48278
|
-
|
|
48526
|
+
for (let e = v; e < n; e++) e < GN || (d[p[e]] = void 0);
|
|
48527
|
+
v = n, setTimeout(() => {
|
|
48279
48528
|
t.validateRows(l, u);
|
|
48280
48529
|
for (let { localIndex: t, columnIds: n } of a) {
|
|
48281
48530
|
let r = u[t];
|
|
@@ -48288,11 +48537,11 @@ function SN() {
|
|
|
48288
48537
|
}
|
|
48289
48538
|
}
|
|
48290
48539
|
a.length > 0 && e.notify();
|
|
48291
|
-
}, 0),
|
|
48540
|
+
}, 0), v < p.length ? setTimeout(y, 0) : e.finalizeSource(o).then(() => {
|
|
48292
48541
|
t.validateUniqueness(), r();
|
|
48293
48542
|
});
|
|
48294
48543
|
};
|
|
48295
|
-
|
|
48544
|
+
y();
|
|
48296
48545
|
}, 0);
|
|
48297
48546
|
}), [
|
|
48298
48547
|
_,
|
|
@@ -48304,43 +48553,45 @@ function SN() {
|
|
|
48304
48553
|
t,
|
|
48305
48554
|
n,
|
|
48306
48555
|
u,
|
|
48307
|
-
|
|
48308
|
-
|
|
48556
|
+
Be,
|
|
48557
|
+
Le,
|
|
48309
48558
|
l,
|
|
48310
|
-
|
|
48559
|
+
Ge,
|
|
48560
|
+
U,
|
|
48561
|
+
oe,
|
|
48311
48562
|
f
|
|
48312
48563
|
]);
|
|
48313
48564
|
return {
|
|
48314
|
-
steps:
|
|
48565
|
+
steps: fe,
|
|
48315
48566
|
activeStepIndex: p,
|
|
48316
48567
|
currentStepIndex: h,
|
|
48317
|
-
isFirstStep:
|
|
48318
|
-
isLastStep:
|
|
48319
|
-
goToStep:
|
|
48320
|
-
nextStep:
|
|
48321
|
-
prevStep:
|
|
48568
|
+
isFirstStep: ge,
|
|
48569
|
+
isLastStep: _e,
|
|
48570
|
+
goToStep: pe,
|
|
48571
|
+
nextStep: me,
|
|
48572
|
+
prevStep: he,
|
|
48322
48573
|
parsedCsv: _,
|
|
48323
48574
|
columnMapping: b,
|
|
48324
|
-
handleFileParsed:
|
|
48325
|
-
handleFileRemoved:
|
|
48326
|
-
updateColumnMapping:
|
|
48327
|
-
valueMapping:
|
|
48328
|
-
autoValueMapping:
|
|
48329
|
-
updateValueMapping:
|
|
48330
|
-
multiselectDelimiters:
|
|
48331
|
-
setMultiselectDelimiter:
|
|
48332
|
-
reapplyMultiselectDelimiter:
|
|
48575
|
+
handleFileParsed: ve,
|
|
48576
|
+
handleFileRemoved: be,
|
|
48577
|
+
updateColumnMapping: Pe,
|
|
48578
|
+
valueMapping: Be,
|
|
48579
|
+
autoValueMapping: Fe,
|
|
48580
|
+
updateValueMapping: Ve,
|
|
48581
|
+
multiselectDelimiters: Le,
|
|
48582
|
+
setMultiselectDelimiter: He,
|
|
48583
|
+
reapplyMultiselectDelimiter: Ue,
|
|
48333
48584
|
pendingOptions: H,
|
|
48334
|
-
addPendingOption:
|
|
48585
|
+
addPendingOption: We,
|
|
48335
48586
|
xlsxFile: A,
|
|
48336
48587
|
sheetNames: N,
|
|
48337
48588
|
selectedSheet: F,
|
|
48338
48589
|
setSelectedSheet: I,
|
|
48339
|
-
handleSheetConfirmed:
|
|
48340
|
-
handleXlsxMultiSheet:
|
|
48590
|
+
handleSheetConfirmed: Se,
|
|
48591
|
+
handleXlsxMultiSheet: xe,
|
|
48341
48592
|
sheetPreviews: L,
|
|
48342
48593
|
primaryKey: C,
|
|
48343
|
-
onPrimaryKeyChange:
|
|
48594
|
+
onPrimaryKeyChange: se,
|
|
48344
48595
|
primaryKeyColumns: S,
|
|
48345
48596
|
pendingColumns: B,
|
|
48346
48597
|
setPendingColumns: V,
|
|
@@ -48352,7 +48603,7 @@ function SN() {
|
|
|
48352
48603
|
k(!0);
|
|
48353
48604
|
try {
|
|
48354
48605
|
await ld(e, "importing", Infinity, async () => {
|
|
48355
|
-
d?.onFileImport ? await
|
|
48606
|
+
d?.onFileImport ? await qe() : d?.onRowsImport ? await Je() : await W();
|
|
48356
48607
|
});
|
|
48357
48608
|
} finally {
|
|
48358
48609
|
v(null), k(!1), i(!1);
|
|
@@ -48362,34 +48613,38 @@ function SN() {
|
|
|
48362
48613
|
_,
|
|
48363
48614
|
e,
|
|
48364
48615
|
d,
|
|
48365
|
-
|
|
48366
|
-
|
|
48367
|
-
|
|
48616
|
+
qe,
|
|
48617
|
+
Je,
|
|
48618
|
+
W,
|
|
48368
48619
|
i
|
|
48369
48620
|
]),
|
|
48370
|
-
parseFile:
|
|
48371
|
-
remoteSourceLoading:
|
|
48372
|
-
remoteSourceError:
|
|
48373
|
-
clearRemoteSourceError:
|
|
48374
|
-
handleRemoteSourceSelect:
|
|
48621
|
+
parseFile: De,
|
|
48622
|
+
remoteSourceLoading: Oe,
|
|
48623
|
+
remoteSourceError: Ae,
|
|
48624
|
+
clearRemoteSourceError: Me,
|
|
48625
|
+
handleRemoteSourceSelect: Ne,
|
|
48626
|
+
headerRowIndex: re,
|
|
48627
|
+
setHeaderRowIndex: ie,
|
|
48628
|
+
headers: U,
|
|
48629
|
+
dataStartIndex: oe
|
|
48375
48630
|
};
|
|
48376
48631
|
}
|
|
48377
48632
|
//#endregion
|
|
48378
48633
|
//#region src/components/DataUploader/context/index.tsx
|
|
48379
|
-
var
|
|
48380
|
-
function
|
|
48381
|
-
let t =
|
|
48382
|
-
return /* @__PURE__ */ (0, O.jsx)(
|
|
48634
|
+
var JN = (0, y.createContext)(null);
|
|
48635
|
+
function YN({ children: e }) {
|
|
48636
|
+
let t = qN();
|
|
48637
|
+
return /* @__PURE__ */ (0, O.jsx)(JN.Provider, {
|
|
48383
48638
|
value: t,
|
|
48384
48639
|
children: e
|
|
48385
48640
|
});
|
|
48386
48641
|
}
|
|
48387
|
-
var
|
|
48388
|
-
let e = (0, y.useContext)(
|
|
48642
|
+
var XN = () => {
|
|
48643
|
+
let e = (0, y.useContext)(JN);
|
|
48389
48644
|
if (!e) throw Error("useDataUploaderContext must be used within DataUploaderProvider");
|
|
48390
48645
|
return e;
|
|
48391
|
-
},
|
|
48392
|
-
let { steps: e, activeStepIndex: t, currentStepIndex: n, goToStep: r } =
|
|
48646
|
+
}, ZN = () => {
|
|
48647
|
+
let { steps: e, activeStepIndex: t, currentStepIndex: n, goToStep: r } = XN();
|
|
48393
48648
|
return /* @__PURE__ */ (0, O.jsx)(zc, {
|
|
48394
48649
|
steps: e,
|
|
48395
48650
|
activeStepIndex: t,
|
|
@@ -48397,79 +48652,79 @@ var TN = () => {
|
|
|
48397
48652
|
onStepChange: r,
|
|
48398
48653
|
isProgressive: !0
|
|
48399
48654
|
});
|
|
48400
|
-
},
|
|
48655
|
+
}, QN = () => /* @__PURE__ */ (0, O.jsx)(YN, { children: /* @__PURE__ */ (0, O.jsx)(ZN, {}) }), $N = {
|
|
48401
48656
|
kty: "EC",
|
|
48402
48657
|
crv: "P-256",
|
|
48403
48658
|
x: "wZO1Jxr21FEBDsVMzbTbF8blU2CP17c_eQY7gorO13U",
|
|
48404
48659
|
y: "Nwr-tXatJZ3DxZqpUG_gOWzmpU6szTqrEL7Gnh5UGwo"
|
|
48405
|
-
},
|
|
48660
|
+
}, eP = "updog_license_grant", tP = new Set([
|
|
48406
48661
|
"updog.tech",
|
|
48407
48662
|
"landing.updog.tech",
|
|
48408
48663
|
"demo.updog.tech"
|
|
48409
48664
|
]);
|
|
48410
|
-
function
|
|
48411
|
-
return
|
|
48665
|
+
function nP() {
|
|
48666
|
+
return tP.has(window.location.hostname);
|
|
48412
48667
|
}
|
|
48413
|
-
function
|
|
48668
|
+
function rP() {
|
|
48414
48669
|
return !1;
|
|
48415
48670
|
}
|
|
48416
|
-
function
|
|
48671
|
+
function iP() {
|
|
48417
48672
|
return "https://api.updog.tech";
|
|
48418
48673
|
}
|
|
48419
|
-
function
|
|
48674
|
+
function aP(e) {
|
|
48420
48675
|
let t = e.replace(/-/g, "+").replace(/_/g, "/"), n = t + "=".repeat((4 - t.length % 4) % 4), r = atob(n), i = new Uint8Array(r.length);
|
|
48421
48676
|
for (let e = 0; e < r.length; e++) i[e] = r.charCodeAt(e);
|
|
48422
48677
|
return i;
|
|
48423
48678
|
}
|
|
48424
|
-
async function
|
|
48679
|
+
async function oP(e) {
|
|
48425
48680
|
let t = new TextEncoder().encode(e), n = await crypto.subtle.digest("SHA-256", t);
|
|
48426
48681
|
return Array.from(new Uint8Array(n)).map((e) => e.toString(16).padStart(2, "0")).join("");
|
|
48427
48682
|
}
|
|
48428
|
-
var
|
|
48429
|
-
async function
|
|
48430
|
-
return
|
|
48683
|
+
var sP = null;
|
|
48684
|
+
async function cP() {
|
|
48685
|
+
return sP || (sP = await crypto.subtle.importKey("jwk", $N, {
|
|
48431
48686
|
name: "ECDSA",
|
|
48432
48687
|
namedCurve: "P-256"
|
|
48433
|
-
}, !1, ["verify"]),
|
|
48688
|
+
}, !1, ["verify"]), sP);
|
|
48434
48689
|
}
|
|
48435
|
-
function
|
|
48690
|
+
function lP() {
|
|
48436
48691
|
try {
|
|
48437
|
-
return localStorage.getItem(
|
|
48692
|
+
return localStorage.getItem(eP);
|
|
48438
48693
|
} catch {
|
|
48439
48694
|
return null;
|
|
48440
48695
|
}
|
|
48441
48696
|
}
|
|
48442
|
-
function
|
|
48697
|
+
function uP(e) {
|
|
48443
48698
|
try {
|
|
48444
|
-
localStorage.setItem(
|
|
48699
|
+
localStorage.setItem(eP, e);
|
|
48445
48700
|
} catch {}
|
|
48446
48701
|
}
|
|
48447
|
-
function
|
|
48702
|
+
function dP() {
|
|
48448
48703
|
try {
|
|
48449
|
-
localStorage.removeItem(
|
|
48704
|
+
localStorage.removeItem(eP);
|
|
48450
48705
|
} catch {}
|
|
48451
48706
|
}
|
|
48452
|
-
async function
|
|
48707
|
+
async function fP(e, t, n) {
|
|
48453
48708
|
let r = e.indexOf(".");
|
|
48454
48709
|
if (r === -1) return !1;
|
|
48455
|
-
let i = e.slice(0, r), a = e.slice(r + 1), o =
|
|
48710
|
+
let i = e.slice(0, r), a = e.slice(r + 1), o = aP(i), s = aP(a), c = await cP();
|
|
48456
48711
|
if (!await crypto.subtle.verify({
|
|
48457
48712
|
name: "ECDSA",
|
|
48458
48713
|
hash: "SHA-256"
|
|
48459
48714
|
}, c, new Uint8Array(s), new Uint8Array(o))) return !1;
|
|
48460
48715
|
let l = JSON.parse(new TextDecoder().decode(o));
|
|
48461
48716
|
if (l.exp <= Math.floor(Date.now() / 1e3)) return !1;
|
|
48462
|
-
let u = await
|
|
48717
|
+
let u = await oP(t);
|
|
48463
48718
|
return !(l.key !== u || l.domain !== n);
|
|
48464
48719
|
}
|
|
48465
|
-
async function
|
|
48466
|
-
let t =
|
|
48720
|
+
async function pP(e) {
|
|
48721
|
+
let t = lP();
|
|
48467
48722
|
if (!t) return {
|
|
48468
48723
|
valid: !1,
|
|
48469
48724
|
errorCode: "license.invalid"
|
|
48470
48725
|
};
|
|
48471
48726
|
try {
|
|
48472
|
-
if (await
|
|
48727
|
+
if (await fP(t, e, window.location.hostname.toLowerCase().trim())) return {
|
|
48473
48728
|
valid: !0,
|
|
48474
48729
|
errorCode: null
|
|
48475
48730
|
};
|
|
@@ -48479,23 +48734,23 @@ async function HN(e) {
|
|
|
48479
48734
|
errorCode: "license.invalid"
|
|
48480
48735
|
};
|
|
48481
48736
|
}
|
|
48482
|
-
async function
|
|
48483
|
-
if (
|
|
48737
|
+
async function mP(e, t = !0) {
|
|
48738
|
+
if (nP() || rP()) return {
|
|
48484
48739
|
valid: !0,
|
|
48485
48740
|
errorCode: null
|
|
48486
48741
|
};
|
|
48487
|
-
let n =
|
|
48742
|
+
let n = iP();
|
|
48488
48743
|
try {
|
|
48489
48744
|
let r = await fetch(`${n}/v1/validate`, { headers: { "X-API-Key": e } });
|
|
48490
48745
|
if (r.ok) {
|
|
48491
48746
|
let e = await r.json();
|
|
48492
|
-
return t && e.grant &&
|
|
48747
|
+
return t && e.grant && uP(e.grant), {
|
|
48493
48748
|
valid: !0,
|
|
48494
48749
|
errorCode: null
|
|
48495
48750
|
};
|
|
48496
48751
|
}
|
|
48497
48752
|
if (r.status >= 400 && r.status < 500) {
|
|
48498
|
-
t &&
|
|
48753
|
+
t && dP();
|
|
48499
48754
|
try {
|
|
48500
48755
|
return await r.json();
|
|
48501
48756
|
} catch {
|
|
@@ -48507,7 +48762,7 @@ async function UN(e, t = !0) {
|
|
|
48507
48762
|
}
|
|
48508
48763
|
throw Error(`Server error: ${r.status}`);
|
|
48509
48764
|
} catch {
|
|
48510
|
-
return t ?
|
|
48765
|
+
return t ? pP(e) : {
|
|
48511
48766
|
valid: !1,
|
|
48512
48767
|
errorCode: "license.invalid"
|
|
48513
48768
|
};
|
|
@@ -48515,7 +48770,7 @@ async function UN(e, t = !0) {
|
|
|
48515
48770
|
}
|
|
48516
48771
|
//#endregion
|
|
48517
48772
|
//#region src/hooks/useLicenseValidation.ts
|
|
48518
|
-
function
|
|
48773
|
+
function hP(e, t, n = !0) {
|
|
48519
48774
|
let [r, i] = (0, y.useState)({
|
|
48520
48775
|
isValidating: t,
|
|
48521
48776
|
isValid: !1,
|
|
@@ -48535,7 +48790,7 @@ function WN(e, t, n = !0) {
|
|
|
48535
48790
|
isValidating: !0,
|
|
48536
48791
|
isValid: !1,
|
|
48537
48792
|
errorCode: null
|
|
48538
|
-
}),
|
|
48793
|
+
}), mP(e, n).then((e) => {
|
|
48539
48794
|
r || i({
|
|
48540
48795
|
isValidating: !1,
|
|
48541
48796
|
isValid: e.valid,
|
|
@@ -48558,7 +48813,7 @@ function WN(e, t, n = !0) {
|
|
|
48558
48813
|
}
|
|
48559
48814
|
//#endregion
|
|
48560
48815
|
//#region src/server/auth/AuthState.ts
|
|
48561
|
-
var
|
|
48816
|
+
var gP = class {
|
|
48562
48817
|
token = null;
|
|
48563
48818
|
get() {
|
|
48564
48819
|
return this.token;
|
|
@@ -48569,13 +48824,13 @@ var GN = class {
|
|
|
48569
48824
|
clear() {
|
|
48570
48825
|
this.token = null;
|
|
48571
48826
|
}
|
|
48572
|
-
},
|
|
48827
|
+
}, _P = class extends Error {
|
|
48573
48828
|
status;
|
|
48574
48829
|
code;
|
|
48575
48830
|
constructor(e) {
|
|
48576
48831
|
super(e.message), this.name = "ScaleHttpError", this.status = e.status, this.code = e.code;
|
|
48577
48832
|
}
|
|
48578
|
-
},
|
|
48833
|
+
}, vP = class {
|
|
48579
48834
|
baseUrl;
|
|
48580
48835
|
apiKey;
|
|
48581
48836
|
auth;
|
|
@@ -48605,7 +48860,7 @@ var GN = class {
|
|
|
48605
48860
|
signal: r?.signal
|
|
48606
48861
|
});
|
|
48607
48862
|
} catch (e) {
|
|
48608
|
-
this.notify(new
|
|
48863
|
+
this.notify(new _P({
|
|
48609
48864
|
status: 0,
|
|
48610
48865
|
code: "network",
|
|
48611
48866
|
message: e instanceof Error ? e.message : String(e)
|
|
@@ -48616,7 +48871,7 @@ var GN = class {
|
|
|
48616
48871
|
try {
|
|
48617
48872
|
e = await s.json();
|
|
48618
48873
|
} catch {}
|
|
48619
|
-
this.notify(new
|
|
48874
|
+
this.notify(new _P({
|
|
48620
48875
|
status: s.status,
|
|
48621
48876
|
code: e.error ?? `http_${s.status}`,
|
|
48622
48877
|
message: e.message ?? s.statusText
|
|
@@ -48627,23 +48882,23 @@ var GN = class {
|
|
|
48627
48882
|
};
|
|
48628
48883
|
//#endregion
|
|
48629
48884
|
//#region src/server/endpoints/workspaces.ts
|
|
48630
|
-
async function
|
|
48885
|
+
async function yP(e, t) {
|
|
48631
48886
|
return e.post("/workspaces", {
|
|
48632
48887
|
primaryKey: t.primaryKey,
|
|
48633
48888
|
columns: t.columns
|
|
48634
48889
|
}, { signal: t.signal });
|
|
48635
48890
|
}
|
|
48636
|
-
async function
|
|
48891
|
+
async function bP(e) {
|
|
48637
48892
|
try {
|
|
48638
48893
|
await e.http.delete(`/workspaces/${e.workspaceId}`, { signal: e.signal });
|
|
48639
48894
|
} catch (e) {
|
|
48640
|
-
if (e instanceof
|
|
48895
|
+
if (e instanceof _P && e.status === 404) return;
|
|
48641
48896
|
throw e;
|
|
48642
48897
|
}
|
|
48643
48898
|
}
|
|
48644
48899
|
//#endregion
|
|
48645
48900
|
//#region src/server/endpoints/query.ts
|
|
48646
|
-
async function
|
|
48901
|
+
async function xP(e, t) {
|
|
48647
48902
|
let n = await e.http.post(`/workspaces/${e.workspaceId}/query`, {
|
|
48648
48903
|
page: {
|
|
48649
48904
|
limit: t.limit,
|
|
@@ -48661,12 +48916,12 @@ async function XN(e, t) {
|
|
|
48661
48916
|
}
|
|
48662
48917
|
//#endregion
|
|
48663
48918
|
//#region src/server/ScaleClient.ts
|
|
48664
|
-
var
|
|
48919
|
+
var SP = class {
|
|
48665
48920
|
disposed = !1;
|
|
48666
48921
|
constructor(e) {
|
|
48667
48922
|
this.deps = e;
|
|
48668
48923
|
}
|
|
48669
|
-
onQuery = (e) =>
|
|
48924
|
+
onQuery = (e) => xP(this.deps, e);
|
|
48670
48925
|
onEdit = async (e) => ({
|
|
48671
48926
|
rejected: !0,
|
|
48672
48927
|
reason: "Edits are not yet supported in server mode (v0)."
|
|
@@ -48683,7 +48938,7 @@ var ZN = class {
|
|
|
48683
48938
|
pageSize = void 0;
|
|
48684
48939
|
scrollSensitivity = void 0;
|
|
48685
48940
|
dispose = async () => {
|
|
48686
|
-
this.disposed || (this.disposed = !0, await
|
|
48941
|
+
this.disposed || (this.disposed = !0, await bP({
|
|
48687
48942
|
http: this.deps.http,
|
|
48688
48943
|
workspaceId: this.deps.workspaceId
|
|
48689
48944
|
}));
|
|
@@ -48691,25 +48946,25 @@ var ZN = class {
|
|
|
48691
48946
|
};
|
|
48692
48947
|
//#endregion
|
|
48693
48948
|
//#region src/server/createScaleClient.ts
|
|
48694
|
-
async function
|
|
48695
|
-
let t = new
|
|
48949
|
+
async function CP(e) {
|
|
48950
|
+
let t = new gP(), n = new vP({
|
|
48696
48951
|
baseUrl: e.url,
|
|
48697
48952
|
apiKey: e.apiKey,
|
|
48698
48953
|
auth: t,
|
|
48699
48954
|
onDegraded: e.onDegraded
|
|
48700
|
-
}), { workspaceId: r, accessToken: i } = await
|
|
48955
|
+
}), { workspaceId: r, accessToken: i } = await yP(n, {
|
|
48701
48956
|
primaryKey: e.primaryKey,
|
|
48702
48957
|
columns: e.columns,
|
|
48703
48958
|
signal: e.signal
|
|
48704
48959
|
});
|
|
48705
|
-
return t.set(i), new
|
|
48960
|
+
return t.set(i), new SP({
|
|
48706
48961
|
workspaceId: r,
|
|
48707
48962
|
http: n
|
|
48708
48963
|
});
|
|
48709
48964
|
}
|
|
48710
48965
|
//#endregion
|
|
48711
48966
|
//#region src/server/errors.ts
|
|
48712
|
-
function
|
|
48967
|
+
function wP(e, t, n) {
|
|
48713
48968
|
return {
|
|
48714
48969
|
code: e,
|
|
48715
48970
|
message: t,
|
|
@@ -48719,7 +48974,7 @@ function $N(e, t, n) {
|
|
|
48719
48974
|
}
|
|
48720
48975
|
//#endregion
|
|
48721
48976
|
//#region src/hooks/useScaleClient.ts
|
|
48722
|
-
function
|
|
48977
|
+
function TP(e) {
|
|
48723
48978
|
let [t, n] = (0, y.useState)({ status: "idle" }), r = (0, y.useRef)(e.columns), i = (0, y.useRef)(e.primaryKey);
|
|
48724
48979
|
return (0, y.useEffect)(() => {
|
|
48725
48980
|
if (!e.enabled) {
|
|
@@ -48728,7 +48983,7 @@ function eP(e) {
|
|
|
48728
48983
|
}
|
|
48729
48984
|
n({ status: "bootstrapping" });
|
|
48730
48985
|
let t = new AbortController(), a = null;
|
|
48731
|
-
return
|
|
48986
|
+
return CP({
|
|
48732
48987
|
url: e.url,
|
|
48733
48988
|
apiKey: e.apiKey,
|
|
48734
48989
|
primaryKey: i.current,
|
|
@@ -48737,7 +48992,7 @@ function eP(e) {
|
|
|
48737
48992
|
onDegraded: (e) => {
|
|
48738
48993
|
t.signal.aborted || n({
|
|
48739
48994
|
status: "failed",
|
|
48740
|
-
error:
|
|
48995
|
+
error: DP(e)
|
|
48741
48996
|
});
|
|
48742
48997
|
}
|
|
48743
48998
|
}).then((e) => {
|
|
@@ -48752,7 +49007,7 @@ function eP(e) {
|
|
|
48752
49007
|
}).catch((e) => {
|
|
48753
49008
|
t.signal.aborted || n({
|
|
48754
49009
|
status: "failed",
|
|
48755
|
-
error:
|
|
49010
|
+
error: EP(e)
|
|
48756
49011
|
});
|
|
48757
49012
|
}), () => {
|
|
48758
49013
|
t.abort(), a?.dispose().catch(() => {});
|
|
@@ -48763,30 +49018,30 @@ function eP(e) {
|
|
|
48763
49018
|
e.apiKey
|
|
48764
49019
|
]), t;
|
|
48765
49020
|
}
|
|
48766
|
-
function
|
|
48767
|
-
return e instanceof
|
|
49021
|
+
function EP(e) {
|
|
49022
|
+
return e instanceof _P ? e.status === 401 ? wP(e.code.startsWith("license.") ? e.code : "license.invalid", e.message, e) : e.status === 0 ? wP("scale.unreachable", e.message, e) : e.status >= 500 ? wP("scale.server_error", e.message, e) : wP("scale.bootstrap_failed", e.message, e) : wP("scale.bootstrap_failed", e instanceof Error ? e.message : String(e), e);
|
|
48768
49023
|
}
|
|
48769
|
-
function
|
|
48770
|
-
return e.status === 0 ?
|
|
49024
|
+
function DP(e) {
|
|
49025
|
+
return e.status === 0 ? wP("scale.unreachable", e.message, e) : e.status === 404 ? wP("scale.workspace_lost", e.message, e) : wP("scale.server_error", e.message, e);
|
|
48771
49026
|
}
|
|
48772
49027
|
//#endregion
|
|
48773
49028
|
//#region src/index.tsx
|
|
48774
|
-
function
|
|
49029
|
+
function OP(e) {
|
|
48775
49030
|
return e === !1 ? { licenseGrant: !1 } : { licenseGrant: e?.licenseGrant ?? !0 };
|
|
48776
49031
|
}
|
|
48777
|
-
function
|
|
49032
|
+
function kP(e) {
|
|
48778
49033
|
let t = (0, y.useMemo)(() => new ed(e.onError), [e.onError]);
|
|
48779
49034
|
return /* @__PURE__ */ (0, O.jsx)(kj, {
|
|
48780
49035
|
errorHandler: t,
|
|
48781
49036
|
children: /* @__PURE__ */ (0, O.jsx)(eh, {
|
|
48782
49037
|
...e,
|
|
48783
49038
|
errorHandler: t,
|
|
48784
|
-
children: e.showUploader ? /* @__PURE__ */ (0, O.jsx)(
|
|
49039
|
+
children: e.showUploader ? /* @__PURE__ */ (0, O.jsx)(QN, {}) : /* @__PURE__ */ (0, O.jsx)(Tj, {})
|
|
48785
49040
|
})
|
|
48786
49041
|
});
|
|
48787
49042
|
}
|
|
48788
|
-
function
|
|
48789
|
-
let t = e.mode ?? "modal", { t: n, rtl: r } = j(), i = r ? "rtl" : "ltr", a =
|
|
49043
|
+
function AP(e) {
|
|
49044
|
+
let t = e.mode ?? "modal", { t: n, rtl: r } = j(), i = r ? "rtl" : "ltr", a = OP(e.localStorage), o = t === "modal" ? e.open : !0, { isValidating: s, isValid: c, errorCode: l } = hP(e.apiKey, t === "modal" ? o : !0, a.licenseGrant), u = e.__server != null, d = TP({
|
|
48790
49045
|
enabled: !s && c && u,
|
|
48791
49046
|
url: e.__server?.url ?? "",
|
|
48792
49047
|
apiKey: e.apiKey,
|
|
@@ -48841,7 +49096,7 @@ function aP(e) {
|
|
|
48841
49096
|
code: e,
|
|
48842
49097
|
message: "License validation failed",
|
|
48843
49098
|
source: "license"
|
|
48844
|
-
} }), E = () => s ? w(n("dataEditor.license.loading")) : c ? u && d.status === "bootstrapping" ? w(n("dataEditor.connecting.label")) : u && d.status === "failed" ? /* @__PURE__ */ (0, O.jsx)(Dj, { error: d.error }) : /* @__PURE__ */ (0, O.jsx)(
|
|
49099
|
+
} }), E = () => s ? w(n("dataEditor.license.loading")) : c ? u && d.status === "bootstrapping" ? w(n("dataEditor.connecting.label")) : u && d.status === "failed" ? /* @__PURE__ */ (0, O.jsx)(Dj, { error: d.error }) : /* @__PURE__ */ (0, O.jsx)(kP, { ...C }) : T(l ?? "license.invalid");
|
|
48845
49100
|
return t === "inline" ? /* @__PURE__ */ (0, O.jsx)("div", {
|
|
48846
49101
|
className: "updog__data-editor updog__data-editor-inline",
|
|
48847
49102
|
dir: i,
|
|
@@ -48861,18 +49116,18 @@ function aP(e) {
|
|
|
48861
49116
|
submitText: n("dataEditor.confirmClose.action")
|
|
48862
49117
|
})] });
|
|
48863
49118
|
}
|
|
48864
|
-
function
|
|
49119
|
+
function jP(e) {
|
|
48865
49120
|
let { translations: t, rtl: n = !1, locale: r = "en", className: i, ...a } = e;
|
|
48866
49121
|
return /* @__PURE__ */ (0, O.jsx)(A, {
|
|
48867
49122
|
translations: t,
|
|
48868
49123
|
rtl: n,
|
|
48869
49124
|
locale: r,
|
|
48870
|
-
children: /* @__PURE__ */ (0, O.jsx)(
|
|
49125
|
+
children: /* @__PURE__ */ (0, O.jsx)(AP, { ...a })
|
|
48871
49126
|
});
|
|
48872
49127
|
}
|
|
48873
49128
|
//#endregion
|
|
48874
49129
|
//#region src/wc.ts
|
|
48875
|
-
var
|
|
49130
|
+
var MP = {
|
|
48876
49131
|
"api-key": {
|
|
48877
49132
|
prop: "apiKey",
|
|
48878
49133
|
type: "string"
|
|
@@ -48905,12 +49160,12 @@ var sP = {
|
|
|
48905
49160
|
prop: "mode",
|
|
48906
49161
|
type: "string"
|
|
48907
49162
|
}
|
|
48908
|
-
},
|
|
49163
|
+
}, NP = class extends HTMLElement {
|
|
48909
49164
|
_root = null;
|
|
48910
49165
|
_props = {};
|
|
48911
49166
|
_renderScheduled = !1;
|
|
48912
49167
|
static get observedAttributes() {
|
|
48913
|
-
return Object.keys(
|
|
49168
|
+
return Object.keys(MP);
|
|
48914
49169
|
}
|
|
48915
49170
|
connectedCallback() {
|
|
48916
49171
|
this._root = (0, v.createRoot)(this), this._props.mode !== "inline" && (this._props.onClose = () => {
|
|
@@ -48921,7 +49176,7 @@ var sP = {
|
|
|
48921
49176
|
this._root?.unmount(), this._root = null;
|
|
48922
49177
|
}
|
|
48923
49178
|
attributeChangedCallback(e, t, n) {
|
|
48924
|
-
let r =
|
|
49179
|
+
let r = MP[e];
|
|
48925
49180
|
r && (this._props[r.prop] = r.type === "boolean" ? n !== null : n, e === "mode" && (n === "inline" ? delete this._props.onClose : this._props.onClose = () => {
|
|
48926
49181
|
this.dispatchEvent(new CustomEvent("close", { bubbles: !0 }));
|
|
48927
49182
|
}), this._scheduleRender());
|
|
@@ -48938,11 +49193,11 @@ var sP = {
|
|
|
48938
49193
|
}
|
|
48939
49194
|
_scheduleRender() {
|
|
48940
49195
|
this._renderScheduled || (this._renderScheduled = !0, queueMicrotask(() => {
|
|
48941
|
-
this._renderScheduled = !1, this._root && this._root.render((0, y.createElement)(
|
|
49196
|
+
this._renderScheduled = !1, this._root && this._root.render((0, y.createElement)(jP, this._props));
|
|
48942
49197
|
}));
|
|
48943
49198
|
}
|
|
48944
49199
|
};
|
|
48945
|
-
for (let e of /* @__PURE__ */ "columns.primaryKey.apiKey.className.localStorage.loadData.__server.onComplete.translations.importFormats.exportFormats.remoteSources.enableDeleteRow.enableAddRow.enableCreateColumn.onColumnMatch.onValueMatch.synonyms.sampleData.rowHeight.headerHeight.locale.variant.rtl.readonly.mode.chat".split(".")) Object.defineProperty(
|
|
49200
|
+
for (let e of /* @__PURE__ */ "columns.primaryKey.apiKey.className.localStorage.loadData.__server.onComplete.translations.importFormats.exportFormats.remoteSources.enableDeleteRow.enableAddRow.enableCreateColumn.onColumnMatch.onValueMatch.synonyms.sampleData.rowHeight.headerHeight.locale.variant.rtl.readonly.mode.chat".split(".")) Object.defineProperty(NP.prototype, e, {
|
|
48946
49201
|
get() {
|
|
48947
49202
|
return this._props[e];
|
|
48948
49203
|
},
|
|
@@ -48952,7 +49207,7 @@ for (let e of /* @__PURE__ */ "columns.primaryKey.apiKey.className.localStorage.
|
|
|
48952
49207
|
enumerable: !0,
|
|
48953
49208
|
configurable: !0
|
|
48954
49209
|
});
|
|
48955
|
-
Object.defineProperty(
|
|
49210
|
+
Object.defineProperty(NP.prototype, "open", {
|
|
48956
49211
|
get() {
|
|
48957
49212
|
return this.hasAttribute("open");
|
|
48958
49213
|
},
|
|
@@ -48961,5 +49216,5 @@ Object.defineProperty(cP.prototype, "open", {
|
|
|
48961
49216
|
},
|
|
48962
49217
|
enumerable: !0,
|
|
48963
49218
|
configurable: !0
|
|
48964
|
-
}), customElements.define("updog-editor",
|
|
49219
|
+
}), customElements.define("updog-editor", NP);
|
|
48965
49220
|
//#endregion
|