@naisys/erp 3.0.0-beta.43 → 3.0.0-beta.44
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.
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as __toESM } from "./rolldown-runtime-CvHMtSRF.js";
|
|
2
|
-
import { $ as
|
|
2
|
+
import { $ as string, $t as Popover, A as IconPlus, At as Modal, B as IconCheck, Bt as Card, C as IconCopy, Ct as Stack, D as IconUpload, Dt as PasswordInput, E as IconUser, Et as Tooltip, F as IconLayoutSidebarLeftCollapse, Ft as Drawer, G as require_semver, Gt as AppShell, H as IconApi, Ht as Badge, I as IconInfoCircle, It as Divider, J as array, Jt as Alert, K as ZodIssueCode, Kt as Anchor, L as IconFile, Lt as Container, M as IconLogout, Mt as Textarea, N as IconListDetails, Nt as Image, O as IconTrash, Ot as Pagination, P as IconLayoutSidebarLeftExpand, Pt as FileButton, Q as record, Qt as Loader, R as IconEye$1, Rt as Code, S as IconDownload, St as Switch, T as IconX, Tt as SegmentedControl, U as IconAlertTriangle, Ut as Autocomplete, V as IconArrowBackUp, Vt as Button, W as IconAlertCircle, Wt as Checkbox, X as number, Xt as Group, Y as boolean, Yt as Accordion, Z as object, Zt as ActionIcon, _ as Markdown, _t as DatesProvider, a as _undefined, an as useDebouncedValue, at as Outlet, b as IconEye, bt as Tabs, c as boolean$1, cn as require_react, ct as useLocation, d as object$1, dt as useParams, en as UnstyledButton, et as union, f as string$1, ft as useSearchParams, g as remarkGfm, gt as DateInput, h as diffWordsWithSpace, ht as DateTimePicker, i as _null, in as useDisclosure, it as Navigate, j as IconNote, jt as Menu, k as IconRobot, kt as NumberInput, l as literal, lt as useNavigate, m as datetime, mt as notifications, n as string$2, nn as Box, nt as BrowserRouter, o as any, on as require_jsx_runtime, ot as Route, p as union$1, pt as Notifications, q as _enum, qt as Text, r as _enum$1, rn as MantineProvider, rt as Link, s as array$1, sn as require_client, st as Routes, t as number$1, tn as ScrollArea, tt as unknown, u as number$2, ut as useOutletContext, v as IconRefresh, vt as Title, w as useForm, wt as Select, x as IconEyeOff, xt as Table, y as IconPhoto, yt as TextInput, z as IconChevronDown, zt as Center } from "./vendor-Co7ZCNxO.js";
|
|
3
3
|
//#region \0vite/modulepreload-polyfill.js
|
|
4
4
|
(function polyfill() {
|
|
5
5
|
const relList = document.createElement("link").relList;
|
|
@@ -780,6 +780,29 @@ var CompactMarkdown = ({ children }) => (0, import_jsx_runtime.jsx)(Markdown, {
|
|
|
780
780
|
children
|
|
781
781
|
});
|
|
782
782
|
//#endregion
|
|
783
|
+
//#region ../../../packages/common-browser/dist/InlineWordDiff.js
|
|
784
|
+
var HIGHLIGHT_BG_OLD = "light-dark(rgba(255, 99, 99, 0.42), rgba(255, 99, 99, 0.45))";
|
|
785
|
+
var HIGHLIGHT_BG_NEW = "light-dark(rgba(80, 200, 120, 0.42), rgba(80, 200, 120, 0.45))";
|
|
786
|
+
/**
|
|
787
|
+
* Renders one side of a word-level inline text diff. Pair two instances
|
|
788
|
+
* (one with side="old", one with side="new") to show the before/after.
|
|
789
|
+
*/
|
|
790
|
+
var InlineWordDiff = ({ oldText, newText, side }) => {
|
|
791
|
+
const parts = (0, import_react.useMemo)(() => diffWordsWithSpace(oldText, newText), [oldText, newText]);
|
|
792
|
+
const highlightBg = side === "old" ? HIGHLIGHT_BG_OLD : HIGHLIGHT_BG_NEW;
|
|
793
|
+
return (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, { children: parts.map((p, i) => {
|
|
794
|
+
if (side === "old" && p.added) return null;
|
|
795
|
+
if (side === "new" && p.removed) return null;
|
|
796
|
+
return (side === "old" ? p.removed : p.added) ? (0, import_jsx_runtime.jsx)("span", {
|
|
797
|
+
style: {
|
|
798
|
+
background: highlightBg,
|
|
799
|
+
borderRadius: 2
|
|
800
|
+
},
|
|
801
|
+
children: p.value
|
|
802
|
+
}, i) : (0, import_jsx_runtime.jsx)("span", { children: p.value }, i);
|
|
803
|
+
}) });
|
|
804
|
+
};
|
|
805
|
+
//#endregion
|
|
783
806
|
//#region ../../../packages/common-browser/dist/SecretField.js
|
|
784
807
|
var SecretField = ({ value, onRotate, rotating, emptyLabel = "Not set" }) => {
|
|
785
808
|
const [visible, setVisible] = (0, import_react.useState)(false);
|
|
@@ -984,6 +1007,19 @@ var ServerLogViewer = ({ fetchLogs: fetchLogsFn, logFiles }) => {
|
|
|
984
1007
|
] });
|
|
985
1008
|
};
|
|
986
1009
|
//#endregion
|
|
1010
|
+
//#region ../../../packages/common-browser/dist/TextDiffViewer.js
|
|
1011
|
+
var cellStyle = {
|
|
1012
|
+
fontFamily: "var(--mantine-font-family-monospace)",
|
|
1013
|
+
fontSize: 12,
|
|
1014
|
+
lineHeight: "18px",
|
|
1015
|
+
padding: "0 8px",
|
|
1016
|
+
whiteSpace: "pre-wrap",
|
|
1017
|
+
wordBreak: "break-word",
|
|
1018
|
+
verticalAlign: "top"
|
|
1019
|
+
};
|
|
1020
|
+
({ ...cellStyle });
|
|
1021
|
+
({ ...cellStyle });
|
|
1022
|
+
//#endregion
|
|
987
1023
|
//#region ../../../packages/common-browser/dist/VersionBadge.js
|
|
988
1024
|
var VersionBadge = ({ version, size = "sm" }) => {
|
|
989
1025
|
if (!version) return null;
|
|
@@ -6918,20 +6954,33 @@ var PropertyChanges = ({ changes }) => /* @__PURE__ */ (0, import_jsx_runtime.js
|
|
|
6918
6954
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Th, { children: "Property" }),
|
|
6919
6955
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Th, { children: "From" }),
|
|
6920
6956
|
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Th, { children: "To" })
|
|
6921
|
-
] }) }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Tbody, { children: changes.map((c) =>
|
|
6922
|
-
|
|
6923
|
-
|
|
6924
|
-
|
|
6925
|
-
|
|
6926
|
-
|
|
6927
|
-
|
|
6928
|
-
|
|
6929
|
-
|
|
6930
|
-
|
|
6931
|
-
|
|
6932
|
-
|
|
6933
|
-
|
|
6934
|
-
|
|
6957
|
+
] }) }), /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Tbody, { children: changes.map((c) => {
|
|
6958
|
+
const fromStr = c.from == null ? "" : String(c.from);
|
|
6959
|
+
const toStr = c.to == null ? "" : String(c.to);
|
|
6960
|
+
const bothPresent = c.from != null && c.to != null;
|
|
6961
|
+
return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(Table.Tr, { children: [
|
|
6962
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Td, {
|
|
6963
|
+
fw: 600,
|
|
6964
|
+
children: c.field
|
|
6965
|
+
}),
|
|
6966
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Td, {
|
|
6967
|
+
c: "red",
|
|
6968
|
+
children: c.from == null ? "—" : bothPresent ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(InlineWordDiff, {
|
|
6969
|
+
oldText: fromStr,
|
|
6970
|
+
newText: toStr,
|
|
6971
|
+
side: "old"
|
|
6972
|
+
}) : fromStr
|
|
6973
|
+
}),
|
|
6974
|
+
/* @__PURE__ */ (0, import_jsx_runtime.jsx)(Table.Td, {
|
|
6975
|
+
c: "green",
|
|
6976
|
+
children: c.to == null ? "—" : bothPresent ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(InlineWordDiff, {
|
|
6977
|
+
oldText: fromStr,
|
|
6978
|
+
newText: toStr,
|
|
6979
|
+
side: "new"
|
|
6980
|
+
}) : toStr
|
|
6981
|
+
})
|
|
6982
|
+
] }, c.field);
|
|
6983
|
+
}) })]
|
|
6935
6984
|
});
|
|
6936
6985
|
var FieldDiffSection = ({ fields }) => {
|
|
6937
6986
|
const changed = fields.filter((f) => f.status !== "unchanged");
|
|
@@ -62320,6 +62320,521 @@ function remarkGfm(options) {
|
|
|
62320
62320
|
fromMarkdownExtensions.push(gfmFromMarkdown());
|
|
62321
62321
|
toMarkdownExtensions.push(gfmToMarkdown(settings));
|
|
62322
62322
|
}
|
|
62323
|
+
//#endregion
|
|
62324
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/base.js
|
|
62325
|
+
var Diff = class {
|
|
62326
|
+
diff(oldStr, newStr, options = {}) {
|
|
62327
|
+
let callback;
|
|
62328
|
+
if (typeof options === "function") {
|
|
62329
|
+
callback = options;
|
|
62330
|
+
options = {};
|
|
62331
|
+
} else if ("callback" in options) callback = options.callback;
|
|
62332
|
+
const oldString = this.castInput(oldStr, options);
|
|
62333
|
+
const newString = this.castInput(newStr, options);
|
|
62334
|
+
const oldTokens = this.removeEmpty(this.tokenize(oldString, options));
|
|
62335
|
+
const newTokens = this.removeEmpty(this.tokenize(newString, options));
|
|
62336
|
+
return this.diffWithOptionsObj(oldTokens, newTokens, options, callback);
|
|
62337
|
+
}
|
|
62338
|
+
diffWithOptionsObj(oldTokens, newTokens, options, callback) {
|
|
62339
|
+
var _a;
|
|
62340
|
+
const done = (value) => {
|
|
62341
|
+
value = this.postProcess(value, options);
|
|
62342
|
+
if (callback) {
|
|
62343
|
+
setTimeout(function() {
|
|
62344
|
+
callback(value);
|
|
62345
|
+
}, 0);
|
|
62346
|
+
return;
|
|
62347
|
+
} else return value;
|
|
62348
|
+
};
|
|
62349
|
+
const newLen = newTokens.length, oldLen = oldTokens.length;
|
|
62350
|
+
let editLength = 1;
|
|
62351
|
+
let maxEditLength = newLen + oldLen;
|
|
62352
|
+
if (options.maxEditLength != null) maxEditLength = Math.min(maxEditLength, options.maxEditLength);
|
|
62353
|
+
const maxExecutionTime = (_a = options.timeout) !== null && _a !== void 0 ? _a : Infinity;
|
|
62354
|
+
const abortAfterTimestamp = Date.now() + maxExecutionTime;
|
|
62355
|
+
const bestPath = [{
|
|
62356
|
+
oldPos: -1,
|
|
62357
|
+
lastComponent: void 0
|
|
62358
|
+
}];
|
|
62359
|
+
let newPos = this.extractCommon(bestPath[0], newTokens, oldTokens, 0, options);
|
|
62360
|
+
if (bestPath[0].oldPos + 1 >= oldLen && newPos + 1 >= newLen) return done(this.buildValues(bestPath[0].lastComponent, newTokens, oldTokens));
|
|
62361
|
+
let minDiagonalToConsider = -Infinity, maxDiagonalToConsider = Infinity;
|
|
62362
|
+
const execEditLength = () => {
|
|
62363
|
+
for (let diagonalPath = Math.max(minDiagonalToConsider, -editLength); diagonalPath <= Math.min(maxDiagonalToConsider, editLength); diagonalPath += 2) {
|
|
62364
|
+
let basePath;
|
|
62365
|
+
const removePath = bestPath[diagonalPath - 1], addPath = bestPath[diagonalPath + 1];
|
|
62366
|
+
if (removePath) bestPath[diagonalPath - 1] = void 0;
|
|
62367
|
+
let canAdd = false;
|
|
62368
|
+
if (addPath) {
|
|
62369
|
+
const addPathNewPos = addPath.oldPos - diagonalPath;
|
|
62370
|
+
canAdd = addPath && 0 <= addPathNewPos && addPathNewPos < newLen;
|
|
62371
|
+
}
|
|
62372
|
+
const canRemove = removePath && removePath.oldPos + 1 < oldLen;
|
|
62373
|
+
if (!canAdd && !canRemove) {
|
|
62374
|
+
bestPath[diagonalPath] = void 0;
|
|
62375
|
+
continue;
|
|
62376
|
+
}
|
|
62377
|
+
if (!canRemove || canAdd && removePath.oldPos < addPath.oldPos) basePath = this.addToPath(addPath, true, false, 0, options);
|
|
62378
|
+
else basePath = this.addToPath(removePath, false, true, 1, options);
|
|
62379
|
+
newPos = this.extractCommon(basePath, newTokens, oldTokens, diagonalPath, options);
|
|
62380
|
+
if (basePath.oldPos + 1 >= oldLen && newPos + 1 >= newLen) return done(this.buildValues(basePath.lastComponent, newTokens, oldTokens)) || true;
|
|
62381
|
+
else {
|
|
62382
|
+
bestPath[diagonalPath] = basePath;
|
|
62383
|
+
if (basePath.oldPos + 1 >= oldLen) maxDiagonalToConsider = Math.min(maxDiagonalToConsider, diagonalPath - 1);
|
|
62384
|
+
if (newPos + 1 >= newLen) minDiagonalToConsider = Math.max(minDiagonalToConsider, diagonalPath + 1);
|
|
62385
|
+
}
|
|
62386
|
+
}
|
|
62387
|
+
editLength++;
|
|
62388
|
+
};
|
|
62389
|
+
if (callback) (function exec() {
|
|
62390
|
+
setTimeout(function() {
|
|
62391
|
+
if (editLength > maxEditLength || Date.now() > abortAfterTimestamp) return callback(void 0);
|
|
62392
|
+
if (!execEditLength()) exec();
|
|
62393
|
+
}, 0);
|
|
62394
|
+
})();
|
|
62395
|
+
else while (editLength <= maxEditLength && Date.now() <= abortAfterTimestamp) {
|
|
62396
|
+
const ret = execEditLength();
|
|
62397
|
+
if (ret) return ret;
|
|
62398
|
+
}
|
|
62399
|
+
}
|
|
62400
|
+
addToPath(path, added, removed, oldPosInc, options) {
|
|
62401
|
+
const last = path.lastComponent;
|
|
62402
|
+
if (last && !options.oneChangePerToken && last.added === added && last.removed === removed) return {
|
|
62403
|
+
oldPos: path.oldPos + oldPosInc,
|
|
62404
|
+
lastComponent: {
|
|
62405
|
+
count: last.count + 1,
|
|
62406
|
+
added,
|
|
62407
|
+
removed,
|
|
62408
|
+
previousComponent: last.previousComponent
|
|
62409
|
+
}
|
|
62410
|
+
};
|
|
62411
|
+
else return {
|
|
62412
|
+
oldPos: path.oldPos + oldPosInc,
|
|
62413
|
+
lastComponent: {
|
|
62414
|
+
count: 1,
|
|
62415
|
+
added,
|
|
62416
|
+
removed,
|
|
62417
|
+
previousComponent: last
|
|
62418
|
+
}
|
|
62419
|
+
};
|
|
62420
|
+
}
|
|
62421
|
+
extractCommon(basePath, newTokens, oldTokens, diagonalPath, options) {
|
|
62422
|
+
const newLen = newTokens.length, oldLen = oldTokens.length;
|
|
62423
|
+
let oldPos = basePath.oldPos, newPos = oldPos - diagonalPath, commonCount = 0;
|
|
62424
|
+
while (newPos + 1 < newLen && oldPos + 1 < oldLen && this.equals(oldTokens[oldPos + 1], newTokens[newPos + 1], options)) {
|
|
62425
|
+
newPos++;
|
|
62426
|
+
oldPos++;
|
|
62427
|
+
commonCount++;
|
|
62428
|
+
if (options.oneChangePerToken) basePath.lastComponent = {
|
|
62429
|
+
count: 1,
|
|
62430
|
+
previousComponent: basePath.lastComponent,
|
|
62431
|
+
added: false,
|
|
62432
|
+
removed: false
|
|
62433
|
+
};
|
|
62434
|
+
}
|
|
62435
|
+
if (commonCount && !options.oneChangePerToken) basePath.lastComponent = {
|
|
62436
|
+
count: commonCount,
|
|
62437
|
+
previousComponent: basePath.lastComponent,
|
|
62438
|
+
added: false,
|
|
62439
|
+
removed: false
|
|
62440
|
+
};
|
|
62441
|
+
basePath.oldPos = oldPos;
|
|
62442
|
+
return newPos;
|
|
62443
|
+
}
|
|
62444
|
+
equals(left, right, options) {
|
|
62445
|
+
if (options.comparator) return options.comparator(left, right);
|
|
62446
|
+
else return left === right || !!options.ignoreCase && left.toLowerCase() === right.toLowerCase();
|
|
62447
|
+
}
|
|
62448
|
+
removeEmpty(array) {
|
|
62449
|
+
const ret = [];
|
|
62450
|
+
for (let i = 0; i < array.length; i++) if (array[i]) ret.push(array[i]);
|
|
62451
|
+
return ret;
|
|
62452
|
+
}
|
|
62453
|
+
castInput(value, options) {
|
|
62454
|
+
return value;
|
|
62455
|
+
}
|
|
62456
|
+
tokenize(value, options) {
|
|
62457
|
+
return Array.from(value);
|
|
62458
|
+
}
|
|
62459
|
+
join(chars) {
|
|
62460
|
+
return chars.join("");
|
|
62461
|
+
}
|
|
62462
|
+
postProcess(changeObjects, options) {
|
|
62463
|
+
return changeObjects;
|
|
62464
|
+
}
|
|
62465
|
+
get useLongestToken() {
|
|
62466
|
+
return false;
|
|
62467
|
+
}
|
|
62468
|
+
buildValues(lastComponent, newTokens, oldTokens) {
|
|
62469
|
+
const components = [];
|
|
62470
|
+
let nextComponent;
|
|
62471
|
+
while (lastComponent) {
|
|
62472
|
+
components.push(lastComponent);
|
|
62473
|
+
nextComponent = lastComponent.previousComponent;
|
|
62474
|
+
delete lastComponent.previousComponent;
|
|
62475
|
+
lastComponent = nextComponent;
|
|
62476
|
+
}
|
|
62477
|
+
components.reverse();
|
|
62478
|
+
const componentLen = components.length;
|
|
62479
|
+
let componentPos = 0, newPos = 0, oldPos = 0;
|
|
62480
|
+
for (; componentPos < componentLen; componentPos++) {
|
|
62481
|
+
const component = components[componentPos];
|
|
62482
|
+
if (!component.removed) {
|
|
62483
|
+
if (!component.added && this.useLongestToken) {
|
|
62484
|
+
let value = newTokens.slice(newPos, newPos + component.count);
|
|
62485
|
+
value = value.map(function(value, i) {
|
|
62486
|
+
const oldValue = oldTokens[oldPos + i];
|
|
62487
|
+
return oldValue.length > value.length ? oldValue : value;
|
|
62488
|
+
});
|
|
62489
|
+
component.value = this.join(value);
|
|
62490
|
+
} else component.value = this.join(newTokens.slice(newPos, newPos + component.count));
|
|
62491
|
+
newPos += component.count;
|
|
62492
|
+
if (!component.added) oldPos += component.count;
|
|
62493
|
+
} else {
|
|
62494
|
+
component.value = this.join(oldTokens.slice(oldPos, oldPos + component.count));
|
|
62495
|
+
oldPos += component.count;
|
|
62496
|
+
}
|
|
62497
|
+
}
|
|
62498
|
+
return components;
|
|
62499
|
+
}
|
|
62500
|
+
};
|
|
62501
|
+
//#endregion
|
|
62502
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/character.js
|
|
62503
|
+
var CharacterDiff = class extends Diff {};
|
|
62504
|
+
new CharacterDiff();
|
|
62505
|
+
//#endregion
|
|
62506
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/util/string.js
|
|
62507
|
+
function longestCommonPrefix(str1, str2) {
|
|
62508
|
+
let i;
|
|
62509
|
+
for (i = 0; i < str1.length && i < str2.length; i++) if (str1[i] != str2[i]) return str1.slice(0, i);
|
|
62510
|
+
return str1.slice(0, i);
|
|
62511
|
+
}
|
|
62512
|
+
function longestCommonSuffix(str1, str2) {
|
|
62513
|
+
let i;
|
|
62514
|
+
if (!str1 || !str2 || str1[str1.length - 1] != str2[str2.length - 1]) return "";
|
|
62515
|
+
for (i = 0; i < str1.length && i < str2.length; i++) if (str1[str1.length - (i + 1)] != str2[str2.length - (i + 1)]) return str1.slice(-i);
|
|
62516
|
+
return str1.slice(-i);
|
|
62517
|
+
}
|
|
62518
|
+
function replacePrefix(string, oldPrefix, newPrefix) {
|
|
62519
|
+
if (string.slice(0, oldPrefix.length) != oldPrefix) throw Error(`string ${JSON.stringify(string)} doesn't start with prefix ${JSON.stringify(oldPrefix)}; this is a bug`);
|
|
62520
|
+
return newPrefix + string.slice(oldPrefix.length);
|
|
62521
|
+
}
|
|
62522
|
+
function replaceSuffix(string, oldSuffix, newSuffix) {
|
|
62523
|
+
if (!oldSuffix) return string + newSuffix;
|
|
62524
|
+
if (string.slice(-oldSuffix.length) != oldSuffix) throw Error(`string ${JSON.stringify(string)} doesn't end with suffix ${JSON.stringify(oldSuffix)}; this is a bug`);
|
|
62525
|
+
return string.slice(0, -oldSuffix.length) + newSuffix;
|
|
62526
|
+
}
|
|
62527
|
+
function removePrefix(string, oldPrefix) {
|
|
62528
|
+
return replacePrefix(string, oldPrefix, "");
|
|
62529
|
+
}
|
|
62530
|
+
function removeSuffix(string, oldSuffix) {
|
|
62531
|
+
return replaceSuffix(string, oldSuffix, "");
|
|
62532
|
+
}
|
|
62533
|
+
function maximumOverlap(string1, string2) {
|
|
62534
|
+
return string2.slice(0, overlapCount(string1, string2));
|
|
62535
|
+
}
|
|
62536
|
+
function overlapCount(a, b) {
|
|
62537
|
+
let startA = 0;
|
|
62538
|
+
if (a.length > b.length) startA = a.length - b.length;
|
|
62539
|
+
let endB = b.length;
|
|
62540
|
+
if (a.length < b.length) endB = a.length;
|
|
62541
|
+
const map = Array(endB);
|
|
62542
|
+
let k = 0;
|
|
62543
|
+
map[0] = 0;
|
|
62544
|
+
for (let j = 1; j < endB; j++) {
|
|
62545
|
+
if (b[j] == b[k]) map[j] = map[k];
|
|
62546
|
+
else map[j] = k;
|
|
62547
|
+
while (k > 0 && b[j] != b[k]) k = map[k];
|
|
62548
|
+
if (b[j] == b[k]) k++;
|
|
62549
|
+
}
|
|
62550
|
+
k = 0;
|
|
62551
|
+
for (let i = startA; i < a.length; i++) {
|
|
62552
|
+
while (k > 0 && a[i] != b[k]) k = map[k];
|
|
62553
|
+
if (a[i] == b[k]) k++;
|
|
62554
|
+
}
|
|
62555
|
+
return k;
|
|
62556
|
+
}
|
|
62557
|
+
/**
|
|
62558
|
+
* Split a string into segments using a word segmenter, merging consecutive
|
|
62559
|
+
* segments if they are both whitespace segments. Whitespace segments can
|
|
62560
|
+
* appear adjacent to one another for two reasons:
|
|
62561
|
+
* - newlines always get their own segment
|
|
62562
|
+
* - where a diacritic is attached to a whitespace character in the text, the
|
|
62563
|
+
* segment ends after the diacritic, so e.g. " \u0300 " becomes two segments.
|
|
62564
|
+
* This function therefore runs the segmenter's .segment() method and then
|
|
62565
|
+
* merges consecutive segments of whitespace into a single part.
|
|
62566
|
+
*/
|
|
62567
|
+
function segment(string, segmenter) {
|
|
62568
|
+
const parts = [];
|
|
62569
|
+
for (const segmentObj of Array.from(segmenter.segment(string))) {
|
|
62570
|
+
const segment = segmentObj.segment;
|
|
62571
|
+
if (parts.length && /\s/.test(parts[parts.length - 1]) && /\s/.test(segment)) parts[parts.length - 1] += segment;
|
|
62572
|
+
else parts.push(segment);
|
|
62573
|
+
}
|
|
62574
|
+
return parts;
|
|
62575
|
+
}
|
|
62576
|
+
function trailingWs(string, segmenter) {
|
|
62577
|
+
if (segmenter) return leadingAndTrailingWs(string, segmenter)[1];
|
|
62578
|
+
let i;
|
|
62579
|
+
for (i = string.length - 1; i >= 0; i--) if (!string[i].match(/\s/)) break;
|
|
62580
|
+
return string.substring(i + 1);
|
|
62581
|
+
}
|
|
62582
|
+
function leadingWs(string, segmenter) {
|
|
62583
|
+
if (segmenter) return leadingAndTrailingWs(string, segmenter)[0];
|
|
62584
|
+
const match = string.match(/^\s*/);
|
|
62585
|
+
return match ? match[0] : "";
|
|
62586
|
+
}
|
|
62587
|
+
function leadingAndTrailingWs(string, segmenter) {
|
|
62588
|
+
if (!segmenter) return [leadingWs(string), trailingWs(string)];
|
|
62589
|
+
if (segmenter.resolvedOptions().granularity != "word") throw new Error("The segmenter passed must have a granularity of \"word\"");
|
|
62590
|
+
const segments = segment(string, segmenter);
|
|
62591
|
+
const firstSeg = segments[0];
|
|
62592
|
+
const lastSeg = segments[segments.length - 1];
|
|
62593
|
+
return [/\s/.test(firstSeg) ? firstSeg : "", /\s/.test(lastSeg) ? lastSeg : ""];
|
|
62594
|
+
}
|
|
62595
|
+
//#endregion
|
|
62596
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/word.js
|
|
62597
|
+
var extendedWordChars = "a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}";
|
|
62598
|
+
var tokenizeIncludingWhitespace = new RegExp(`[${extendedWordChars}]+|\\s+|[^${extendedWordChars}]`, "ug");
|
|
62599
|
+
var WordDiff = class extends Diff {
|
|
62600
|
+
equals(left, right, options) {
|
|
62601
|
+
if (options.ignoreCase) {
|
|
62602
|
+
left = left.toLowerCase();
|
|
62603
|
+
right = right.toLowerCase();
|
|
62604
|
+
}
|
|
62605
|
+
return left.trim() === right.trim();
|
|
62606
|
+
}
|
|
62607
|
+
tokenize(value, options = {}) {
|
|
62608
|
+
let parts;
|
|
62609
|
+
if (options.intlSegmenter) {
|
|
62610
|
+
const segmenter = options.intlSegmenter;
|
|
62611
|
+
if (segmenter.resolvedOptions().granularity != "word") throw new Error("The segmenter passed must have a granularity of \"word\"");
|
|
62612
|
+
parts = segment(value, segmenter);
|
|
62613
|
+
} else parts = value.match(tokenizeIncludingWhitespace) || [];
|
|
62614
|
+
const tokens = [];
|
|
62615
|
+
let prevPart = null;
|
|
62616
|
+
parts.forEach((part) => {
|
|
62617
|
+
if (/\s/.test(part)) if (prevPart == null) tokens.push(part);
|
|
62618
|
+
else tokens.push(tokens.pop() + part);
|
|
62619
|
+
else if (prevPart != null && /\s/.test(prevPart)) if (tokens[tokens.length - 1] == prevPart) tokens.push(tokens.pop() + part);
|
|
62620
|
+
else tokens.push(prevPart + part);
|
|
62621
|
+
else tokens.push(part);
|
|
62622
|
+
prevPart = part;
|
|
62623
|
+
});
|
|
62624
|
+
return tokens;
|
|
62625
|
+
}
|
|
62626
|
+
join(tokens) {
|
|
62627
|
+
return tokens.map((token, i) => {
|
|
62628
|
+
if (i == 0) return token;
|
|
62629
|
+
else return token.replace(/^\s+/, "");
|
|
62630
|
+
}).join("");
|
|
62631
|
+
}
|
|
62632
|
+
postProcess(changes, options) {
|
|
62633
|
+
if (!changes || options.oneChangePerToken) return changes;
|
|
62634
|
+
let lastKeep = null;
|
|
62635
|
+
let insertion = null;
|
|
62636
|
+
let deletion = null;
|
|
62637
|
+
changes.forEach((change) => {
|
|
62638
|
+
if (change.added) insertion = change;
|
|
62639
|
+
else if (change.removed) deletion = change;
|
|
62640
|
+
else {
|
|
62641
|
+
if (insertion || deletion) dedupeWhitespaceInChangeObjects(lastKeep, deletion, insertion, change, options.intlSegmenter);
|
|
62642
|
+
lastKeep = change;
|
|
62643
|
+
insertion = null;
|
|
62644
|
+
deletion = null;
|
|
62645
|
+
}
|
|
62646
|
+
});
|
|
62647
|
+
if (insertion || deletion) dedupeWhitespaceInChangeObjects(lastKeep, deletion, insertion, null, options.intlSegmenter);
|
|
62648
|
+
return changes;
|
|
62649
|
+
}
|
|
62650
|
+
};
|
|
62651
|
+
new WordDiff();
|
|
62652
|
+
function dedupeWhitespaceInChangeObjects(startKeep, deletion, insertion, endKeep, segmenter) {
|
|
62653
|
+
if (deletion && insertion) {
|
|
62654
|
+
const [oldWsPrefix, oldWsSuffix] = leadingAndTrailingWs(deletion.value, segmenter);
|
|
62655
|
+
const [newWsPrefix, newWsSuffix] = leadingAndTrailingWs(insertion.value, segmenter);
|
|
62656
|
+
if (startKeep) {
|
|
62657
|
+
const commonWsPrefix = longestCommonPrefix(oldWsPrefix, newWsPrefix);
|
|
62658
|
+
startKeep.value = replaceSuffix(startKeep.value, newWsPrefix, commonWsPrefix);
|
|
62659
|
+
deletion.value = removePrefix(deletion.value, commonWsPrefix);
|
|
62660
|
+
insertion.value = removePrefix(insertion.value, commonWsPrefix);
|
|
62661
|
+
}
|
|
62662
|
+
if (endKeep) {
|
|
62663
|
+
const commonWsSuffix = longestCommonSuffix(oldWsSuffix, newWsSuffix);
|
|
62664
|
+
endKeep.value = replacePrefix(endKeep.value, newWsSuffix, commonWsSuffix);
|
|
62665
|
+
deletion.value = removeSuffix(deletion.value, commonWsSuffix);
|
|
62666
|
+
insertion.value = removeSuffix(insertion.value, commonWsSuffix);
|
|
62667
|
+
}
|
|
62668
|
+
} else if (insertion) {
|
|
62669
|
+
if (startKeep) {
|
|
62670
|
+
const ws = leadingWs(insertion.value, segmenter);
|
|
62671
|
+
insertion.value = insertion.value.substring(ws.length);
|
|
62672
|
+
}
|
|
62673
|
+
if (endKeep) {
|
|
62674
|
+
const ws = leadingWs(endKeep.value, segmenter);
|
|
62675
|
+
endKeep.value = endKeep.value.substring(ws.length);
|
|
62676
|
+
}
|
|
62677
|
+
} else if (startKeep && endKeep) {
|
|
62678
|
+
const newWsFull = leadingWs(endKeep.value, segmenter), [delWsStart, delWsEnd] = leadingAndTrailingWs(deletion.value, segmenter);
|
|
62679
|
+
const newWsStart = longestCommonPrefix(newWsFull, delWsStart);
|
|
62680
|
+
deletion.value = removePrefix(deletion.value, newWsStart);
|
|
62681
|
+
const newWsEnd = longestCommonSuffix(removePrefix(newWsFull, newWsStart), delWsEnd);
|
|
62682
|
+
deletion.value = removeSuffix(deletion.value, newWsEnd);
|
|
62683
|
+
endKeep.value = replacePrefix(endKeep.value, newWsFull, newWsEnd);
|
|
62684
|
+
startKeep.value = replaceSuffix(startKeep.value, newWsFull, newWsFull.slice(0, newWsFull.length - newWsEnd.length));
|
|
62685
|
+
} else if (endKeep) {
|
|
62686
|
+
const endKeepWsPrefix = leadingWs(endKeep.value, segmenter);
|
|
62687
|
+
const overlap = maximumOverlap(trailingWs(deletion.value, segmenter), endKeepWsPrefix);
|
|
62688
|
+
deletion.value = removeSuffix(deletion.value, overlap);
|
|
62689
|
+
} else if (startKeep) {
|
|
62690
|
+
const overlap = maximumOverlap(trailingWs(startKeep.value, segmenter), leadingWs(deletion.value, segmenter));
|
|
62691
|
+
deletion.value = removePrefix(deletion.value, overlap);
|
|
62692
|
+
}
|
|
62693
|
+
}
|
|
62694
|
+
var WordsWithSpaceDiff = class extends Diff {
|
|
62695
|
+
tokenize(value) {
|
|
62696
|
+
const regex = new RegExp(`(\\r?\\n)|[${extendedWordChars}]+|[^\\S\\n\\r]+|[^${extendedWordChars}]`, "ug");
|
|
62697
|
+
return value.match(regex) || [];
|
|
62698
|
+
}
|
|
62699
|
+
};
|
|
62700
|
+
var wordsWithSpaceDiff = new WordsWithSpaceDiff();
|
|
62701
|
+
function diffWordsWithSpace(oldStr, newStr, options) {
|
|
62702
|
+
return wordsWithSpaceDiff.diff(oldStr, newStr, options);
|
|
62703
|
+
}
|
|
62704
|
+
//#endregion
|
|
62705
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/line.js
|
|
62706
|
+
var LineDiff = class extends Diff {
|
|
62707
|
+
constructor() {
|
|
62708
|
+
super(...arguments);
|
|
62709
|
+
this.tokenize = tokenize;
|
|
62710
|
+
}
|
|
62711
|
+
equals(left, right, options) {
|
|
62712
|
+
if (options.ignoreWhitespace) {
|
|
62713
|
+
if (!options.newlineIsToken || !left.includes("\n")) left = left.trim();
|
|
62714
|
+
if (!options.newlineIsToken || !right.includes("\n")) right = right.trim();
|
|
62715
|
+
} else if (options.ignoreNewlineAtEof && !options.newlineIsToken) {
|
|
62716
|
+
if (left.endsWith("\n")) left = left.slice(0, -1);
|
|
62717
|
+
if (right.endsWith("\n")) right = right.slice(0, -1);
|
|
62718
|
+
}
|
|
62719
|
+
return super.equals(left, right, options);
|
|
62720
|
+
}
|
|
62721
|
+
};
|
|
62722
|
+
new LineDiff();
|
|
62723
|
+
function tokenize(value, options) {
|
|
62724
|
+
if (options.stripTrailingCr) value = value.replace(/\r\n/g, "\n");
|
|
62725
|
+
const retLines = [], linesAndNewlines = value.split(/(\n|\r\n)/);
|
|
62726
|
+
if (!linesAndNewlines[linesAndNewlines.length - 1]) linesAndNewlines.pop();
|
|
62727
|
+
for (let i = 0; i < linesAndNewlines.length; i++) {
|
|
62728
|
+
const line = linesAndNewlines[i];
|
|
62729
|
+
if (i % 2 && !options.newlineIsToken) retLines[retLines.length - 1] += line;
|
|
62730
|
+
else retLines.push(line);
|
|
62731
|
+
}
|
|
62732
|
+
return retLines;
|
|
62733
|
+
}
|
|
62734
|
+
//#endregion
|
|
62735
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/sentence.js
|
|
62736
|
+
function isSentenceEndPunct(char) {
|
|
62737
|
+
return char == "." || char == "!" || char == "?";
|
|
62738
|
+
}
|
|
62739
|
+
var SentenceDiff = class extends Diff {
|
|
62740
|
+
tokenize(value) {
|
|
62741
|
+
var _a;
|
|
62742
|
+
const result = [];
|
|
62743
|
+
let tokenStartI = 0;
|
|
62744
|
+
for (let i = 0; i < value.length; i++) {
|
|
62745
|
+
if (i == value.length - 1) {
|
|
62746
|
+
result.push(value.slice(tokenStartI));
|
|
62747
|
+
break;
|
|
62748
|
+
}
|
|
62749
|
+
if (isSentenceEndPunct(value[i]) && value[i + 1].match(/\s/)) {
|
|
62750
|
+
result.push(value.slice(tokenStartI, i + 1));
|
|
62751
|
+
i = tokenStartI = i + 1;
|
|
62752
|
+
while ((_a = value[i + 1]) === null || _a === void 0 ? void 0 : _a.match(/\s/)) i++;
|
|
62753
|
+
result.push(value.slice(tokenStartI, i + 1));
|
|
62754
|
+
tokenStartI = i + 1;
|
|
62755
|
+
}
|
|
62756
|
+
}
|
|
62757
|
+
return result;
|
|
62758
|
+
}
|
|
62759
|
+
};
|
|
62760
|
+
new SentenceDiff();
|
|
62761
|
+
//#endregion
|
|
62762
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/css.js
|
|
62763
|
+
var CssDiff = class extends Diff {
|
|
62764
|
+
tokenize(value) {
|
|
62765
|
+
return value.split(/([{}:;,]|\s+)/);
|
|
62766
|
+
}
|
|
62767
|
+
};
|
|
62768
|
+
new CssDiff();
|
|
62769
|
+
//#endregion
|
|
62770
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/json.js
|
|
62771
|
+
var JsonDiff = class extends Diff {
|
|
62772
|
+
constructor() {
|
|
62773
|
+
super(...arguments);
|
|
62774
|
+
this.tokenize = tokenize;
|
|
62775
|
+
}
|
|
62776
|
+
get useLongestToken() {
|
|
62777
|
+
return true;
|
|
62778
|
+
}
|
|
62779
|
+
castInput(value, options) {
|
|
62780
|
+
const { undefinedReplacement, stringifyReplacer = (k, v) => typeof v === "undefined" ? undefinedReplacement : v } = options;
|
|
62781
|
+
return typeof value === "string" ? value : JSON.stringify(canonicalize(value, null, null, stringifyReplacer), null, " ");
|
|
62782
|
+
}
|
|
62783
|
+
equals(left, right, options) {
|
|
62784
|
+
return super.equals(left.replace(/,([\r\n])/g, "$1"), right.replace(/,([\r\n])/g, "$1"), options);
|
|
62785
|
+
}
|
|
62786
|
+
};
|
|
62787
|
+
new JsonDiff();
|
|
62788
|
+
function canonicalize(obj, stack, replacementStack, replacer, key) {
|
|
62789
|
+
stack = stack || [];
|
|
62790
|
+
replacementStack = replacementStack || [];
|
|
62791
|
+
if (replacer) obj = replacer(key === void 0 ? "" : key, obj);
|
|
62792
|
+
let i;
|
|
62793
|
+
for (i = 0; i < stack.length; i += 1) if (stack[i] === obj) return replacementStack[i];
|
|
62794
|
+
let canonicalizedObj;
|
|
62795
|
+
if ("[object Array]" === Object.prototype.toString.call(obj)) {
|
|
62796
|
+
stack.push(obj);
|
|
62797
|
+
canonicalizedObj = new Array(obj.length);
|
|
62798
|
+
replacementStack.push(canonicalizedObj);
|
|
62799
|
+
for (i = 0; i < obj.length; i += 1) canonicalizedObj[i] = canonicalize(obj[i], stack, replacementStack, replacer, String(i));
|
|
62800
|
+
stack.pop();
|
|
62801
|
+
replacementStack.pop();
|
|
62802
|
+
return canonicalizedObj;
|
|
62803
|
+
}
|
|
62804
|
+
if (obj && obj.toJSON) obj = obj.toJSON();
|
|
62805
|
+
if (typeof obj === "object" && obj !== null) {
|
|
62806
|
+
stack.push(obj);
|
|
62807
|
+
canonicalizedObj = {};
|
|
62808
|
+
replacementStack.push(canonicalizedObj);
|
|
62809
|
+
const sortedKeys = [];
|
|
62810
|
+
let key;
|
|
62811
|
+
for (key in obj)
|
|
62812
|
+
/* istanbul ignore else */
|
|
62813
|
+
if (Object.prototype.hasOwnProperty.call(obj, key)) sortedKeys.push(key);
|
|
62814
|
+
sortedKeys.sort();
|
|
62815
|
+
for (i = 0; i < sortedKeys.length; i += 1) {
|
|
62816
|
+
key = sortedKeys[i];
|
|
62817
|
+
canonicalizedObj[key] = canonicalize(obj[key], stack, replacementStack, replacer, key);
|
|
62818
|
+
}
|
|
62819
|
+
stack.pop();
|
|
62820
|
+
replacementStack.pop();
|
|
62821
|
+
} else canonicalizedObj = obj;
|
|
62822
|
+
return canonicalizedObj;
|
|
62823
|
+
}
|
|
62824
|
+
//#endregion
|
|
62825
|
+
//#region ../../../packages/common-browser/node_modules/diff/libesm/diff/array.js
|
|
62826
|
+
var ArrayDiff = class extends Diff {
|
|
62827
|
+
tokenize(value) {
|
|
62828
|
+
return value.slice();
|
|
62829
|
+
}
|
|
62830
|
+
join(value) {
|
|
62831
|
+
return value;
|
|
62832
|
+
}
|
|
62833
|
+
removeEmpty(value) {
|
|
62834
|
+
return value;
|
|
62835
|
+
}
|
|
62836
|
+
};
|
|
62837
|
+
new ArrayDiff();
|
|
62323
62838
|
Object.freeze({ status: "aborted" });
|
|
62324
62839
|
function $constructor(name, initializer, params) {
|
|
62325
62840
|
function init(inst, def) {
|
|
@@ -66176,4 +66691,4 @@ function number(params) {
|
|
|
66176
66691
|
return /* @__PURE__ */ _coercedNumber(ZodNumber, params);
|
|
66177
66692
|
}
|
|
66178
66693
|
//#endregion
|
|
66179
|
-
export {
|
|
66694
|
+
export { string$5 as $, Popover as $t, IconPlus as A, Modal as At, IconCheck as B, Card as Bt, IconCopy as C, Stack as Ct, IconUpload as D, PasswordInput as Dt, IconUser as E, Tooltip as Et, IconLayoutSidebarLeftCollapse as F, Drawer as Ft, require_semver as G, AppShell as Gt, IconApi as H, Badge as Ht, IconInfoCircle as I, Divider as It, array$1 as J, Alert as Jt, ZodIssueCode as K, Anchor as Kt, IconFile as L, Container as Lt, IconLogout as M, Textarea as Mt, IconListDetails as N, Image as Nt, IconTrash as O, Pagination as Ot, IconLayoutSidebarLeftExpand as P, FileButton as Pt, record as Q, Loader as Qt, IconEye$1 as R, Code as Rt, IconDownload as S, Switch as St, IconX as T, SegmentedControl as Tt, IconAlertTriangle as U, Autocomplete as Ut, IconArrowBackUp as V, Button as Vt, IconAlertCircle as W, Checkbox as Wt, number$4 as X, Group as Xt, boolean$3 as Y, Accordion as Yt, object$1 as Z, ActionIcon as Zt, Markdown as _, DatesProvider as _t, _undefined as a, useDebouncedValue as an, Outlet as at, IconEye as b, Tabs as bt, boolean as c, require_react as cn, useLocation as ct, object as d, useParams as dt, UnstyledButton as en, union$1 as et, string$1 as f, useSearchParams as ft, remarkGfm as g, DateInput as gt, diffWordsWithSpace as h, DateTimePicker as ht, _null as i, useDisclosure as in, Navigate as it, IconNote as j, Menu as jt, IconRobot as k, NumberInput as kt, literal as l, useNavigate as lt, datetime as m, notifications as mt, string as n, Box as nn, BrowserRouter as nt, any as o, require_jsx_runtime as on, Route as ot, union as p, Notifications as pt, _enum$1 as q, Text as qt, _enum as r, MantineProvider as rn, Link as rt, array as s, require_client as sn, Routes as st, number as t, ScrollArea as tn, unknown$1 as tt, number$1 as u, useOutletContext as ut, IconRefresh as v, Title as vt, useForm as w, Select as wt, IconEyeOff as x, Table as xt, IconPhoto as y, TextInput as yt, IconChevronDown as z, Center as zt };
|
package/client-dist/index.html
CHANGED
|
@@ -45,9 +45,9 @@
|
|
|
45
45
|
<meta name="format-detection" content="telephone=no" />
|
|
46
46
|
|
|
47
47
|
<title>NAISYS ERP</title>
|
|
48
|
-
<script type="module" crossorigin src="/erp/assets/index-
|
|
48
|
+
<script type="module" crossorigin src="/erp/assets/index-BQQF-oz_.js"></script>
|
|
49
49
|
<link rel="modulepreload" crossorigin href="/erp/assets/rolldown-runtime-CvHMtSRF.js">
|
|
50
|
-
<link rel="modulepreload" crossorigin href="/erp/assets/vendor-
|
|
50
|
+
<link rel="modulepreload" crossorigin href="/erp/assets/vendor-Co7ZCNxO.js">
|
|
51
51
|
<link rel="stylesheet" crossorigin href="/erp/assets/vendor-CLUPjUnv.css">
|
|
52
52
|
<link rel="stylesheet" crossorigin href="/erp/assets/index-CSiMTJfw.css">
|
|
53
53
|
</head>
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@naisys/erp",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.44",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@naisys/erp",
|
|
9
|
-
"version": "3.0.0-beta.
|
|
9
|
+
"version": "3.0.0-beta.44",
|
|
10
10
|
"dependencies": {
|
|
11
11
|
"@fastify/cookie": "^11.0.2",
|
|
12
12
|
"@fastify/cors": "^11.2.0",
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
"@fastify/rate-limit": "^10.3.0",
|
|
15
15
|
"@fastify/static": "^9.0.0",
|
|
16
16
|
"@fastify/swagger": "^9.7.0",
|
|
17
|
-
"@naisys/common": "3.0.0-beta.
|
|
18
|
-
"@naisys/common-node": "3.0.0-beta.
|
|
19
|
-
"@naisys/erp-shared": "3.0.0-beta.
|
|
20
|
-
"@naisys/hub-database": "3.0.0-beta.
|
|
21
|
-
"@naisys/supervisor-database": "3.0.0-beta.
|
|
17
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
18
|
+
"@naisys/common-node": "3.0.0-beta.44",
|
|
19
|
+
"@naisys/erp-shared": "3.0.0-beta.44",
|
|
20
|
+
"@naisys/hub-database": "3.0.0-beta.44",
|
|
21
|
+
"@naisys/supervisor-database": "3.0.0-beta.44",
|
|
22
22
|
"@prisma/adapter-better-sqlite3": "^7.5.0",
|
|
23
23
|
"@prisma/client": "^7.5.0",
|
|
24
24
|
"@scalar/fastify-api-reference": "^1.48.7",
|
|
@@ -394,41 +394,41 @@
|
|
|
394
394
|
}
|
|
395
395
|
},
|
|
396
396
|
"node_modules/@naisys/common": {
|
|
397
|
-
"version": "3.0.0-beta.
|
|
398
|
-
"resolved": "https://registry.npmjs.org/@naisys/common/-/common-3.0.0-beta.
|
|
399
|
-
"integrity": "sha512-
|
|
397
|
+
"version": "3.0.0-beta.44",
|
|
398
|
+
"resolved": "https://registry.npmjs.org/@naisys/common/-/common-3.0.0-beta.44.tgz",
|
|
399
|
+
"integrity": "sha512-g7ZiYVZTXa+qhPdzNrc0CDjx6ks/Gl8uJ+GVJlocyeClU+eKfbsc7/NU4f8S+DUyxrwZIA082r1ZR9YATjbc4g==",
|
|
400
400
|
"dependencies": {
|
|
401
401
|
"semver": "^7.7.4",
|
|
402
402
|
"zod": "^4.3.6"
|
|
403
403
|
}
|
|
404
404
|
},
|
|
405
405
|
"node_modules/@naisys/common-node": {
|
|
406
|
-
"version": "3.0.0-beta.
|
|
407
|
-
"resolved": "https://registry.npmjs.org/@naisys/common-node/-/common-node-3.0.0-beta.
|
|
408
|
-
"integrity": "sha512-
|
|
406
|
+
"version": "3.0.0-beta.44",
|
|
407
|
+
"resolved": "https://registry.npmjs.org/@naisys/common-node/-/common-node-3.0.0-beta.44.tgz",
|
|
408
|
+
"integrity": "sha512-8I/1Q+cqxW204x8HY24cnoMn2fNNd4d+s5VX6/0G4Fotcx08n1fRFqNENDmGfhEPOlvS9KBpVhyTqr5/Ur/GVw==",
|
|
409
409
|
"dependencies": {
|
|
410
|
-
"@naisys/common": "3.0.0-beta.
|
|
410
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
411
411
|
"better-sqlite3": "^12.6.2",
|
|
412
412
|
"js-yaml": "^4.1.1",
|
|
413
413
|
"pino": "^10.3.1"
|
|
414
414
|
}
|
|
415
415
|
},
|
|
416
416
|
"node_modules/@naisys/erp-shared": {
|
|
417
|
-
"version": "3.0.0-beta.
|
|
418
|
-
"resolved": "https://registry.npmjs.org/@naisys/erp-shared/-/erp-shared-3.0.0-beta.
|
|
419
|
-
"integrity": "sha512-
|
|
417
|
+
"version": "3.0.0-beta.44",
|
|
418
|
+
"resolved": "https://registry.npmjs.org/@naisys/erp-shared/-/erp-shared-3.0.0-beta.44.tgz",
|
|
419
|
+
"integrity": "sha512-YdWKB3FfeU6Wkz/IS4iLzTCy0G9pnnN5clvHQ6THQ+o4V5aTsf7fiwtIIaPDJoF1lZVipgpCYjfQcUj4F8E7kw==",
|
|
420
420
|
"dependencies": {
|
|
421
|
-
"@naisys/common": "3.0.0-beta.
|
|
421
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
422
422
|
"zod": "^4.3.6"
|
|
423
423
|
}
|
|
424
424
|
},
|
|
425
425
|
"node_modules/@naisys/hub-database": {
|
|
426
|
-
"version": "3.0.0-beta.
|
|
427
|
-
"resolved": "https://registry.npmjs.org/@naisys/hub-database/-/hub-database-3.0.0-beta.
|
|
428
|
-
"integrity": "sha512-
|
|
426
|
+
"version": "3.0.0-beta.44",
|
|
427
|
+
"resolved": "https://registry.npmjs.org/@naisys/hub-database/-/hub-database-3.0.0-beta.44.tgz",
|
|
428
|
+
"integrity": "sha512-DXrWAdr9BHvv3pQUderMhG70r3FfydN9qygtm1OHSYgUa51tQ+e7mkEsfOINK4nmt+cg6MoW1s4kPeh7LovLVw==",
|
|
429
429
|
"dependencies": {
|
|
430
|
-
"@naisys/common": "3.0.0-beta.
|
|
431
|
-
"@naisys/common-node": "3.0.0-beta.
|
|
430
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
431
|
+
"@naisys/common-node": "3.0.0-beta.44",
|
|
432
432
|
"@prisma/adapter-better-sqlite3": "^7.5.0",
|
|
433
433
|
"@prisma/client": "^7.5.0",
|
|
434
434
|
"better-sqlite3": "^12.6.2",
|
|
@@ -436,12 +436,12 @@
|
|
|
436
436
|
}
|
|
437
437
|
},
|
|
438
438
|
"node_modules/@naisys/supervisor-database": {
|
|
439
|
-
"version": "3.0.0-beta.
|
|
440
|
-
"resolved": "https://registry.npmjs.org/@naisys/supervisor-database/-/supervisor-database-3.0.0-beta.
|
|
441
|
-
"integrity": "sha512-
|
|
439
|
+
"version": "3.0.0-beta.44",
|
|
440
|
+
"resolved": "https://registry.npmjs.org/@naisys/supervisor-database/-/supervisor-database-3.0.0-beta.44.tgz",
|
|
441
|
+
"integrity": "sha512-Z7OLyOII1UTXAz/4KXjbG4hy/GCRCTXwNasmfELO3beAM66GvKAlXrGClFSHtXNKvgVaQomATSRdZKqlPH4tVg==",
|
|
442
442
|
"dependencies": {
|
|
443
|
-
"@naisys/common": "3.0.0-beta.
|
|
444
|
-
"@naisys/common-node": "3.0.0-beta.
|
|
443
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
444
|
+
"@naisys/common-node": "3.0.0-beta.44",
|
|
445
445
|
"@prisma/adapter-better-sqlite3": "^7.5.0",
|
|
446
446
|
"@prisma/client": "^7.5.0",
|
|
447
447
|
"bcryptjs": "^3.0.2",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@naisys/erp",
|
|
3
|
-
"version": "3.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.44",
|
|
4
4
|
"description": "NAISYS ERP - Web UI for AI-driven order and work management",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/erpServer.js",
|
|
@@ -46,11 +46,11 @@
|
|
|
46
46
|
"@fastify/rate-limit": "^10.3.0",
|
|
47
47
|
"@fastify/static": "^9.0.0",
|
|
48
48
|
"@fastify/swagger": "^9.7.0",
|
|
49
|
-
"@naisys/common": "3.0.0-beta.
|
|
50
|
-
"@naisys/common-node": "3.0.0-beta.
|
|
51
|
-
"@naisys/erp-shared": "3.0.0-beta.
|
|
52
|
-
"@naisys/hub-database": "3.0.0-beta.
|
|
53
|
-
"@naisys/supervisor-database": "3.0.0-beta.
|
|
49
|
+
"@naisys/common": "3.0.0-beta.44",
|
|
50
|
+
"@naisys/common-node": "3.0.0-beta.44",
|
|
51
|
+
"@naisys/erp-shared": "3.0.0-beta.44",
|
|
52
|
+
"@naisys/hub-database": "3.0.0-beta.44",
|
|
53
|
+
"@naisys/supervisor-database": "3.0.0-beta.44",
|
|
54
54
|
"@prisma/adapter-better-sqlite3": "^7.5.0",
|
|
55
55
|
"@prisma/client": "^7.5.0",
|
|
56
56
|
"@scalar/fastify-api-reference": "^1.48.7",
|