@arcote.tech/arc-host 0.7.5 → 0.7.7
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/dist/index.js +208 -105
- package/dist/index.js.map +8 -7
- package/dist/src/context-handler.d.ts +6 -2
- package/dist/src/context-handler.d.ts.map +1 -1
- package/dist/src/create-server.d.ts +6 -0
- package/dist/src/create-server.d.ts.map +1 -1
- package/package.json +9 -3
- package/src/context-handler.ts +53 -24
- package/src/create-server.ts +120 -48
package/dist/index.js
CHANGED
|
@@ -978,7 +978,7 @@ var require_timespan = __commonJS((exports, module) => {
|
|
|
978
978
|
};
|
|
979
979
|
});
|
|
980
980
|
|
|
981
|
-
// ../../node_modules/.bun/semver@7.
|
|
981
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/constants.js
|
|
982
982
|
var require_constants = __commonJS((exports, module) => {
|
|
983
983
|
var SEMVER_SPEC_VERSION = "2.0.0";
|
|
984
984
|
var MAX_LENGTH = 256;
|
|
@@ -1006,13 +1006,13 @@ var require_constants = __commonJS((exports, module) => {
|
|
|
1006
1006
|
};
|
|
1007
1007
|
});
|
|
1008
1008
|
|
|
1009
|
-
// ../../node_modules/.bun/semver@7.
|
|
1009
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/debug.js
|
|
1010
1010
|
var require_debug = __commonJS((exports, module) => {
|
|
1011
1011
|
var debug = typeof process === "object" && process.env && process.env.NODE_DEBUG && /\bsemver\b/i.test(process.env.NODE_DEBUG) ? (...args) => console.error("SEMVER", ...args) : () => {};
|
|
1012
1012
|
module.exports = debug;
|
|
1013
1013
|
});
|
|
1014
1014
|
|
|
1015
|
-
// ../../node_modules/.bun/semver@7.
|
|
1015
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/re.js
|
|
1016
1016
|
var require_re = __commonJS((exports, module) => {
|
|
1017
1017
|
var {
|
|
1018
1018
|
MAX_SAFE_COMPONENT_LENGTH,
|
|
@@ -1097,7 +1097,7 @@ var require_re = __commonJS((exports, module) => {
|
|
|
1097
1097
|
createToken("GTE0PRE", "^\\s*>=\\s*0\\.0\\.0-0\\s*$");
|
|
1098
1098
|
});
|
|
1099
1099
|
|
|
1100
|
-
// ../../node_modules/.bun/semver@7.
|
|
1100
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/parse-options.js
|
|
1101
1101
|
var require_parse_options = __commonJS((exports, module) => {
|
|
1102
1102
|
var looseOption = Object.freeze({ loose: true });
|
|
1103
1103
|
var emptyOpts = Object.freeze({});
|
|
@@ -1113,7 +1113,7 @@ var require_parse_options = __commonJS((exports, module) => {
|
|
|
1113
1113
|
module.exports = parseOptions;
|
|
1114
1114
|
});
|
|
1115
1115
|
|
|
1116
|
-
// ../../node_modules/.bun/semver@7.
|
|
1116
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/identifiers.js
|
|
1117
1117
|
var require_identifiers = __commonJS((exports, module) => {
|
|
1118
1118
|
var numeric = /^[0-9]+$/;
|
|
1119
1119
|
var compareIdentifiers = (a, b) => {
|
|
@@ -1135,7 +1135,7 @@ var require_identifiers = __commonJS((exports, module) => {
|
|
|
1135
1135
|
};
|
|
1136
1136
|
});
|
|
1137
1137
|
|
|
1138
|
-
// ../../node_modules/.bun/semver@7.
|
|
1138
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/classes/semver.js
|
|
1139
1139
|
var require_semver = __commonJS((exports, module) => {
|
|
1140
1140
|
var debug = require_debug();
|
|
1141
1141
|
var { MAX_LENGTH, MAX_SAFE_INTEGER } = require_constants();
|
|
@@ -1404,7 +1404,7 @@ var require_semver = __commonJS((exports, module) => {
|
|
|
1404
1404
|
module.exports = SemVer;
|
|
1405
1405
|
});
|
|
1406
1406
|
|
|
1407
|
-
// ../../node_modules/.bun/semver@7.
|
|
1407
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/parse.js
|
|
1408
1408
|
var require_parse = __commonJS((exports, module) => {
|
|
1409
1409
|
var SemVer = require_semver();
|
|
1410
1410
|
var parse = (version, options, throwErrors = false) => {
|
|
@@ -1423,7 +1423,7 @@ var require_parse = __commonJS((exports, module) => {
|
|
|
1423
1423
|
module.exports = parse;
|
|
1424
1424
|
});
|
|
1425
1425
|
|
|
1426
|
-
// ../../node_modules/.bun/semver@7.
|
|
1426
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/valid.js
|
|
1427
1427
|
var require_valid = __commonJS((exports, module) => {
|
|
1428
1428
|
var parse = require_parse();
|
|
1429
1429
|
var valid = (version, options) => {
|
|
@@ -1433,7 +1433,7 @@ var require_valid = __commonJS((exports, module) => {
|
|
|
1433
1433
|
module.exports = valid;
|
|
1434
1434
|
});
|
|
1435
1435
|
|
|
1436
|
-
// ../../node_modules/.bun/semver@7.
|
|
1436
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/clean.js
|
|
1437
1437
|
var require_clean = __commonJS((exports, module) => {
|
|
1438
1438
|
var parse = require_parse();
|
|
1439
1439
|
var clean = (version, options) => {
|
|
@@ -1443,7 +1443,7 @@ var require_clean = __commonJS((exports, module) => {
|
|
|
1443
1443
|
module.exports = clean;
|
|
1444
1444
|
});
|
|
1445
1445
|
|
|
1446
|
-
// ../../node_modules/.bun/semver@7.
|
|
1446
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/inc.js
|
|
1447
1447
|
var require_inc = __commonJS((exports, module) => {
|
|
1448
1448
|
var SemVer = require_semver();
|
|
1449
1449
|
var inc = (version, release, options, identifier, identifierBase) => {
|
|
@@ -1461,7 +1461,7 @@ var require_inc = __commonJS((exports, module) => {
|
|
|
1461
1461
|
module.exports = inc;
|
|
1462
1462
|
});
|
|
1463
1463
|
|
|
1464
|
-
// ../../node_modules/.bun/semver@7.
|
|
1464
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/diff.js
|
|
1465
1465
|
var require_diff = __commonJS((exports, module) => {
|
|
1466
1466
|
var parse = require_parse();
|
|
1467
1467
|
var diff = (version1, version2) => {
|
|
@@ -1502,28 +1502,28 @@ var require_diff = __commonJS((exports, module) => {
|
|
|
1502
1502
|
module.exports = diff;
|
|
1503
1503
|
});
|
|
1504
1504
|
|
|
1505
|
-
// ../../node_modules/.bun/semver@7.
|
|
1505
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/major.js
|
|
1506
1506
|
var require_major = __commonJS((exports, module) => {
|
|
1507
1507
|
var SemVer = require_semver();
|
|
1508
1508
|
var major = (a, loose) => new SemVer(a, loose).major;
|
|
1509
1509
|
module.exports = major;
|
|
1510
1510
|
});
|
|
1511
1511
|
|
|
1512
|
-
// ../../node_modules/.bun/semver@7.
|
|
1512
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/minor.js
|
|
1513
1513
|
var require_minor = __commonJS((exports, module) => {
|
|
1514
1514
|
var SemVer = require_semver();
|
|
1515
1515
|
var minor = (a, loose) => new SemVer(a, loose).minor;
|
|
1516
1516
|
module.exports = minor;
|
|
1517
1517
|
});
|
|
1518
1518
|
|
|
1519
|
-
// ../../node_modules/.bun/semver@7.
|
|
1519
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/patch.js
|
|
1520
1520
|
var require_patch = __commonJS((exports, module) => {
|
|
1521
1521
|
var SemVer = require_semver();
|
|
1522
1522
|
var patch = (a, loose) => new SemVer(a, loose).patch;
|
|
1523
1523
|
module.exports = patch;
|
|
1524
1524
|
});
|
|
1525
1525
|
|
|
1526
|
-
// ../../node_modules/.bun/semver@7.
|
|
1526
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/prerelease.js
|
|
1527
1527
|
var require_prerelease = __commonJS((exports, module) => {
|
|
1528
1528
|
var parse = require_parse();
|
|
1529
1529
|
var prerelease = (version, options) => {
|
|
@@ -1533,28 +1533,28 @@ var require_prerelease = __commonJS((exports, module) => {
|
|
|
1533
1533
|
module.exports = prerelease;
|
|
1534
1534
|
});
|
|
1535
1535
|
|
|
1536
|
-
// ../../node_modules/.bun/semver@7.
|
|
1536
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/compare.js
|
|
1537
1537
|
var require_compare = __commonJS((exports, module) => {
|
|
1538
1538
|
var SemVer = require_semver();
|
|
1539
1539
|
var compare = (a, b, loose) => new SemVer(a, loose).compare(new SemVer(b, loose));
|
|
1540
1540
|
module.exports = compare;
|
|
1541
1541
|
});
|
|
1542
1542
|
|
|
1543
|
-
// ../../node_modules/.bun/semver@7.
|
|
1543
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/rcompare.js
|
|
1544
1544
|
var require_rcompare = __commonJS((exports, module) => {
|
|
1545
1545
|
var compare = require_compare();
|
|
1546
1546
|
var rcompare = (a, b, loose) => compare(b, a, loose);
|
|
1547
1547
|
module.exports = rcompare;
|
|
1548
1548
|
});
|
|
1549
1549
|
|
|
1550
|
-
// ../../node_modules/.bun/semver@7.
|
|
1550
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/compare-loose.js
|
|
1551
1551
|
var require_compare_loose = __commonJS((exports, module) => {
|
|
1552
1552
|
var compare = require_compare();
|
|
1553
1553
|
var compareLoose = (a, b) => compare(a, b, true);
|
|
1554
1554
|
module.exports = compareLoose;
|
|
1555
1555
|
});
|
|
1556
1556
|
|
|
1557
|
-
// ../../node_modules/.bun/semver@7.
|
|
1557
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/compare-build.js
|
|
1558
1558
|
var require_compare_build = __commonJS((exports, module) => {
|
|
1559
1559
|
var SemVer = require_semver();
|
|
1560
1560
|
var compareBuild = (a, b, loose) => {
|
|
@@ -1565,63 +1565,63 @@ var require_compare_build = __commonJS((exports, module) => {
|
|
|
1565
1565
|
module.exports = compareBuild;
|
|
1566
1566
|
});
|
|
1567
1567
|
|
|
1568
|
-
// ../../node_modules/.bun/semver@7.
|
|
1568
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/sort.js
|
|
1569
1569
|
var require_sort = __commonJS((exports, module) => {
|
|
1570
1570
|
var compareBuild = require_compare_build();
|
|
1571
1571
|
var sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose));
|
|
1572
1572
|
module.exports = sort;
|
|
1573
1573
|
});
|
|
1574
1574
|
|
|
1575
|
-
// ../../node_modules/.bun/semver@7.
|
|
1575
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/rsort.js
|
|
1576
1576
|
var require_rsort = __commonJS((exports, module) => {
|
|
1577
1577
|
var compareBuild = require_compare_build();
|
|
1578
1578
|
var rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose));
|
|
1579
1579
|
module.exports = rsort;
|
|
1580
1580
|
});
|
|
1581
1581
|
|
|
1582
|
-
// ../../node_modules/.bun/semver@7.
|
|
1582
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/gt.js
|
|
1583
1583
|
var require_gt = __commonJS((exports, module) => {
|
|
1584
1584
|
var compare = require_compare();
|
|
1585
1585
|
var gt = (a, b, loose) => compare(a, b, loose) > 0;
|
|
1586
1586
|
module.exports = gt;
|
|
1587
1587
|
});
|
|
1588
1588
|
|
|
1589
|
-
// ../../node_modules/.bun/semver@7.
|
|
1589
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/lt.js
|
|
1590
1590
|
var require_lt = __commonJS((exports, module) => {
|
|
1591
1591
|
var compare = require_compare();
|
|
1592
1592
|
var lt = (a, b, loose) => compare(a, b, loose) < 0;
|
|
1593
1593
|
module.exports = lt;
|
|
1594
1594
|
});
|
|
1595
1595
|
|
|
1596
|
-
// ../../node_modules/.bun/semver@7.
|
|
1596
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/eq.js
|
|
1597
1597
|
var require_eq = __commonJS((exports, module) => {
|
|
1598
1598
|
var compare = require_compare();
|
|
1599
1599
|
var eq = (a, b, loose) => compare(a, b, loose) === 0;
|
|
1600
1600
|
module.exports = eq;
|
|
1601
1601
|
});
|
|
1602
1602
|
|
|
1603
|
-
// ../../node_modules/.bun/semver@7.
|
|
1603
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/neq.js
|
|
1604
1604
|
var require_neq = __commonJS((exports, module) => {
|
|
1605
1605
|
var compare = require_compare();
|
|
1606
1606
|
var neq = (a, b, loose) => compare(a, b, loose) !== 0;
|
|
1607
1607
|
module.exports = neq;
|
|
1608
1608
|
});
|
|
1609
1609
|
|
|
1610
|
-
// ../../node_modules/.bun/semver@7.
|
|
1610
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/gte.js
|
|
1611
1611
|
var require_gte = __commonJS((exports, module) => {
|
|
1612
1612
|
var compare = require_compare();
|
|
1613
1613
|
var gte = (a, b, loose) => compare(a, b, loose) >= 0;
|
|
1614
1614
|
module.exports = gte;
|
|
1615
1615
|
});
|
|
1616
1616
|
|
|
1617
|
-
// ../../node_modules/.bun/semver@7.
|
|
1617
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/lte.js
|
|
1618
1618
|
var require_lte = __commonJS((exports, module) => {
|
|
1619
1619
|
var compare = require_compare();
|
|
1620
1620
|
var lte = (a, b, loose) => compare(a, b, loose) <= 0;
|
|
1621
1621
|
module.exports = lte;
|
|
1622
1622
|
});
|
|
1623
1623
|
|
|
1624
|
-
// ../../node_modules/.bun/semver@7.
|
|
1624
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/cmp.js
|
|
1625
1625
|
var require_cmp = __commonJS((exports, module) => {
|
|
1626
1626
|
var eq = require_eq();
|
|
1627
1627
|
var neq = require_neq();
|
|
@@ -1668,7 +1668,7 @@ var require_cmp = __commonJS((exports, module) => {
|
|
|
1668
1668
|
module.exports = cmp;
|
|
1669
1669
|
});
|
|
1670
1670
|
|
|
1671
|
-
// ../../node_modules/.bun/semver@7.
|
|
1671
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/coerce.js
|
|
1672
1672
|
var require_coerce = __commonJS((exports, module) => {
|
|
1673
1673
|
var SemVer = require_semver();
|
|
1674
1674
|
var parse = require_parse();
|
|
@@ -1711,7 +1711,45 @@ var require_coerce = __commonJS((exports, module) => {
|
|
|
1711
1711
|
module.exports = coerce;
|
|
1712
1712
|
});
|
|
1713
1713
|
|
|
1714
|
-
// ../../node_modules/.bun/semver@7.
|
|
1714
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/truncate.js
|
|
1715
|
+
var require_truncate = __commonJS((exports, module) => {
|
|
1716
|
+
var parse = require_parse();
|
|
1717
|
+
var constants = require_constants();
|
|
1718
|
+
var SemVer = require_semver();
|
|
1719
|
+
var truncate = (version, truncation, options) => {
|
|
1720
|
+
if (!constants.RELEASE_TYPES.includes(truncation)) {
|
|
1721
|
+
return null;
|
|
1722
|
+
}
|
|
1723
|
+
const clonedVersion = cloneInputVersion(version, options);
|
|
1724
|
+
return clonedVersion && doTruncation(clonedVersion, truncation);
|
|
1725
|
+
};
|
|
1726
|
+
var cloneInputVersion = (version, options) => {
|
|
1727
|
+
const versionStringToParse = version instanceof SemVer ? version.version : version;
|
|
1728
|
+
return parse(versionStringToParse, options);
|
|
1729
|
+
};
|
|
1730
|
+
var doTruncation = (version, truncation) => {
|
|
1731
|
+
if (isPrerelease(truncation)) {
|
|
1732
|
+
return version.version;
|
|
1733
|
+
}
|
|
1734
|
+
version.prerelease = [];
|
|
1735
|
+
switch (truncation) {
|
|
1736
|
+
case "major":
|
|
1737
|
+
version.minor = 0;
|
|
1738
|
+
version.patch = 0;
|
|
1739
|
+
break;
|
|
1740
|
+
case "minor":
|
|
1741
|
+
version.patch = 0;
|
|
1742
|
+
break;
|
|
1743
|
+
}
|
|
1744
|
+
return version.format();
|
|
1745
|
+
};
|
|
1746
|
+
var isPrerelease = (type) => {
|
|
1747
|
+
return type.startsWith("pre");
|
|
1748
|
+
};
|
|
1749
|
+
module.exports = truncate;
|
|
1750
|
+
});
|
|
1751
|
+
|
|
1752
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/internal/lrucache.js
|
|
1715
1753
|
var require_lrucache = __commonJS((exports, module) => {
|
|
1716
1754
|
class LRUCache {
|
|
1717
1755
|
constructor() {
|
|
@@ -1746,7 +1784,7 @@ var require_lrucache = __commonJS((exports, module) => {
|
|
|
1746
1784
|
module.exports = LRUCache;
|
|
1747
1785
|
});
|
|
1748
1786
|
|
|
1749
|
-
// ../../node_modules/.bun/semver@7.
|
|
1787
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/classes/range.js
|
|
1750
1788
|
var require_range = __commonJS((exports, module) => {
|
|
1751
1789
|
var SPACE_CHARACTERS = /\s+/g;
|
|
1752
1790
|
|
|
@@ -2120,7 +2158,7 @@ var require_range = __commonJS((exports, module) => {
|
|
|
2120
2158
|
};
|
|
2121
2159
|
});
|
|
2122
2160
|
|
|
2123
|
-
// ../../node_modules/.bun/semver@7.
|
|
2161
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/classes/comparator.js
|
|
2124
2162
|
var require_comparator = __commonJS((exports, module) => {
|
|
2125
2163
|
var ANY = Symbol("SemVer ANY");
|
|
2126
2164
|
|
|
@@ -2231,7 +2269,7 @@ var require_comparator = __commonJS((exports, module) => {
|
|
|
2231
2269
|
var Range = require_range();
|
|
2232
2270
|
});
|
|
2233
2271
|
|
|
2234
|
-
// ../../node_modules/.bun/semver@7.
|
|
2272
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/functions/satisfies.js
|
|
2235
2273
|
var require_satisfies = __commonJS((exports, module) => {
|
|
2236
2274
|
var Range = require_range();
|
|
2237
2275
|
var satisfies = (version, range, options) => {
|
|
@@ -2245,14 +2283,14 @@ var require_satisfies = __commonJS((exports, module) => {
|
|
|
2245
2283
|
module.exports = satisfies;
|
|
2246
2284
|
});
|
|
2247
2285
|
|
|
2248
|
-
// ../../node_modules/.bun/semver@7.
|
|
2286
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/to-comparators.js
|
|
2249
2287
|
var require_to_comparators = __commonJS((exports, module) => {
|
|
2250
2288
|
var Range = require_range();
|
|
2251
2289
|
var toComparators = (range, options) => new Range(range, options).set.map((comp) => comp.map((c) => c.value).join(" ").trim().split(" "));
|
|
2252
2290
|
module.exports = toComparators;
|
|
2253
2291
|
});
|
|
2254
2292
|
|
|
2255
|
-
// ../../node_modules/.bun/semver@7.
|
|
2293
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/max-satisfying.js
|
|
2256
2294
|
var require_max_satisfying = __commonJS((exports, module) => {
|
|
2257
2295
|
var SemVer = require_semver();
|
|
2258
2296
|
var Range = require_range();
|
|
@@ -2278,7 +2316,7 @@ var require_max_satisfying = __commonJS((exports, module) => {
|
|
|
2278
2316
|
module.exports = maxSatisfying;
|
|
2279
2317
|
});
|
|
2280
2318
|
|
|
2281
|
-
// ../../node_modules/.bun/semver@7.
|
|
2319
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/min-satisfying.js
|
|
2282
2320
|
var require_min_satisfying = __commonJS((exports, module) => {
|
|
2283
2321
|
var SemVer = require_semver();
|
|
2284
2322
|
var Range = require_range();
|
|
@@ -2304,7 +2342,7 @@ var require_min_satisfying = __commonJS((exports, module) => {
|
|
|
2304
2342
|
module.exports = minSatisfying;
|
|
2305
2343
|
});
|
|
2306
2344
|
|
|
2307
|
-
// ../../node_modules/.bun/semver@7.
|
|
2345
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/min-version.js
|
|
2308
2346
|
var require_min_version = __commonJS((exports, module) => {
|
|
2309
2347
|
var SemVer = require_semver();
|
|
2310
2348
|
var Range = require_range();
|
|
@@ -2358,7 +2396,7 @@ var require_min_version = __commonJS((exports, module) => {
|
|
|
2358
2396
|
module.exports = minVersion;
|
|
2359
2397
|
});
|
|
2360
2398
|
|
|
2361
|
-
// ../../node_modules/.bun/semver@7.
|
|
2399
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/valid.js
|
|
2362
2400
|
var require_valid2 = __commonJS((exports, module) => {
|
|
2363
2401
|
var Range = require_range();
|
|
2364
2402
|
var validRange = (range, options) => {
|
|
@@ -2371,7 +2409,7 @@ var require_valid2 = __commonJS((exports, module) => {
|
|
|
2371
2409
|
module.exports = validRange;
|
|
2372
2410
|
});
|
|
2373
2411
|
|
|
2374
|
-
// ../../node_modules/.bun/semver@7.
|
|
2412
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/outside.js
|
|
2375
2413
|
var require_outside = __commonJS((exports, module) => {
|
|
2376
2414
|
var SemVer = require_semver();
|
|
2377
2415
|
var Comparator = require_comparator();
|
|
@@ -2437,21 +2475,21 @@ var require_outside = __commonJS((exports, module) => {
|
|
|
2437
2475
|
module.exports = outside;
|
|
2438
2476
|
});
|
|
2439
2477
|
|
|
2440
|
-
// ../../node_modules/.bun/semver@7.
|
|
2478
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/gtr.js
|
|
2441
2479
|
var require_gtr = __commonJS((exports, module) => {
|
|
2442
2480
|
var outside = require_outside();
|
|
2443
2481
|
var gtr = (version, range, options) => outside(version, range, ">", options);
|
|
2444
2482
|
module.exports = gtr;
|
|
2445
2483
|
});
|
|
2446
2484
|
|
|
2447
|
-
// ../../node_modules/.bun/semver@7.
|
|
2485
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/ltr.js
|
|
2448
2486
|
var require_ltr = __commonJS((exports, module) => {
|
|
2449
2487
|
var outside = require_outside();
|
|
2450
2488
|
var ltr = (version, range, options) => outside(version, range, "<", options);
|
|
2451
2489
|
module.exports = ltr;
|
|
2452
2490
|
});
|
|
2453
2491
|
|
|
2454
|
-
// ../../node_modules/.bun/semver@7.
|
|
2492
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/intersects.js
|
|
2455
2493
|
var require_intersects = __commonJS((exports, module) => {
|
|
2456
2494
|
var Range = require_range();
|
|
2457
2495
|
var intersects = (r1, r2, options) => {
|
|
@@ -2462,7 +2500,7 @@ var require_intersects = __commonJS((exports, module) => {
|
|
|
2462
2500
|
module.exports = intersects;
|
|
2463
2501
|
});
|
|
2464
2502
|
|
|
2465
|
-
// ../../node_modules/.bun/semver@7.
|
|
2503
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/simplify.js
|
|
2466
2504
|
var require_simplify = __commonJS((exports, module) => {
|
|
2467
2505
|
var satisfies = require_satisfies();
|
|
2468
2506
|
var compare = require_compare();
|
|
@@ -2509,7 +2547,7 @@ var require_simplify = __commonJS((exports, module) => {
|
|
|
2509
2547
|
};
|
|
2510
2548
|
});
|
|
2511
2549
|
|
|
2512
|
-
// ../../node_modules/.bun/semver@7.
|
|
2550
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/ranges/subset.js
|
|
2513
2551
|
var require_subset = __commonJS((exports, module) => {
|
|
2514
2552
|
var Range = require_range();
|
|
2515
2553
|
var Comparator = require_comparator();
|
|
@@ -2669,7 +2707,7 @@ var require_subset = __commonJS((exports, module) => {
|
|
|
2669
2707
|
module.exports = subset;
|
|
2670
2708
|
});
|
|
2671
2709
|
|
|
2672
|
-
// ../../node_modules/.bun/semver@7.
|
|
2710
|
+
// ../../node_modules/.bun/semver@7.8.0/node_modules/semver/index.js
|
|
2673
2711
|
var require_semver2 = __commonJS((exports, module) => {
|
|
2674
2712
|
var internalRe = require_re();
|
|
2675
2713
|
var constants = require_constants();
|
|
@@ -2698,6 +2736,7 @@ var require_semver2 = __commonJS((exports, module) => {
|
|
|
2698
2736
|
var lte = require_lte();
|
|
2699
2737
|
var cmp = require_cmp();
|
|
2700
2738
|
var coerce = require_coerce();
|
|
2739
|
+
var truncate = require_truncate();
|
|
2701
2740
|
var Comparator = require_comparator();
|
|
2702
2741
|
var Range = require_range();
|
|
2703
2742
|
var satisfies = require_satisfies();
|
|
@@ -2736,6 +2775,7 @@ var require_semver2 = __commonJS((exports, module) => {
|
|
|
2736
2775
|
lte,
|
|
2737
2776
|
cmp,
|
|
2738
2777
|
coerce,
|
|
2778
|
+
truncate,
|
|
2739
2779
|
Comparator,
|
|
2740
2780
|
Range,
|
|
2741
2781
|
satisfies,
|
|
@@ -3855,14 +3895,16 @@ function filterEventsForTokens(tokens, events, eventDefinitions) {
|
|
|
3855
3895
|
// src/context-handler.ts
|
|
3856
3896
|
class ContextHandler {
|
|
3857
3897
|
context;
|
|
3898
|
+
telemetry;
|
|
3858
3899
|
model;
|
|
3859
3900
|
dataStorage;
|
|
3860
3901
|
eventPublisher;
|
|
3861
3902
|
eventDefinitions = new Map;
|
|
3862
3903
|
hostEventIdCounter = 0;
|
|
3863
3904
|
initialized = false;
|
|
3864
|
-
constructor(context, dbAdapter) {
|
|
3905
|
+
constructor(context, dbAdapter, telemetry) {
|
|
3865
3906
|
this.context = context;
|
|
3907
|
+
this.telemetry = telemetry;
|
|
3866
3908
|
this.dataStorage = new MasterDataStorage(dbAdapter);
|
|
3867
3909
|
this.eventPublisher = new LocalEventPublisher(this.dataStorage);
|
|
3868
3910
|
this.model = new Model(context, {
|
|
@@ -3910,27 +3952,49 @@ class ContextHandler {
|
|
|
3910
3952
|
}
|
|
3911
3953
|
}
|
|
3912
3954
|
async executeCommand(commandName, params, rawToken) {
|
|
3913
|
-
const
|
|
3914
|
-
|
|
3915
|
-
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3955
|
+
const includePayloads = this.telemetry?.shouldIncludePayloads() ?? false;
|
|
3956
|
+
const baseAttrs = {
|
|
3957
|
+
"rpc.system": "arc",
|
|
3958
|
+
"rpc.method": commandName,
|
|
3959
|
+
"arc.command.name": commandName,
|
|
3960
|
+
"arc.command.params_size": params ? JSON.stringify(params).length : 0,
|
|
3961
|
+
...includePayloads ? { "arc.command.params": params } : {}
|
|
3962
|
+
};
|
|
3963
|
+
const runCommand = async () => {
|
|
3964
|
+
const scoped = new ScopedModel(this.model, "request");
|
|
3965
|
+
if (rawToken)
|
|
3966
|
+
scoped.setToken(rawToken);
|
|
3967
|
+
const mutations = mutationExecutor(scoped);
|
|
3968
|
+
let command;
|
|
3969
|
+
if (commandName.includes(".")) {
|
|
3970
|
+
const [elementName, methodName] = commandName.split(".");
|
|
3971
|
+
const element = mutations[elementName];
|
|
3972
|
+
command = element?.[methodName];
|
|
3973
|
+
} else {
|
|
3974
|
+
command = mutations[commandName];
|
|
3975
|
+
}
|
|
3976
|
+
if (!command) {
|
|
3977
|
+
throw new Error(`Command '${commandName}' not found`);
|
|
3978
|
+
}
|
|
3979
|
+
try {
|
|
3980
|
+
return await command(params);
|
|
3981
|
+
} catch (error) {
|
|
3982
|
+
console.error(`[ARC] Command '${commandName}' failed:`, error);
|
|
3983
|
+
throw error;
|
|
3984
|
+
}
|
|
3985
|
+
};
|
|
3986
|
+
if (!this.telemetry)
|
|
3987
|
+
return runCommand();
|
|
3988
|
+
const start = Date.now();
|
|
3928
3989
|
try {
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3990
|
+
return await this.telemetry.startSpan(`command.${commandName}`, runCommand, { attributes: baseAttrs });
|
|
3991
|
+
} finally {
|
|
3992
|
+
this.telemetry.measureSince("arc.command.duration_ms", start, {
|
|
3993
|
+
"arc.command.name": commandName
|
|
3994
|
+
});
|
|
3995
|
+
this.telemetry.incrementCounter("arc.commands.total", 1, {
|
|
3996
|
+
"arc.command.name": commandName
|
|
3997
|
+
});
|
|
3934
3998
|
}
|
|
3935
3999
|
}
|
|
3936
4000
|
async persistEvents(events, clientId, token) {
|
|
@@ -4993,7 +5057,7 @@ async function createArcServer(config) {
|
|
|
4993
5057
|
const jwtSecret = config.jwtSecret || process.env.JWT_SECRET || "arc-host-secret-change-in-production";
|
|
4994
5058
|
const port = config.port || 5005;
|
|
4995
5059
|
const dbAdapter = config.dbAdapterFactory(config.context);
|
|
4996
|
-
const contextHandler = new ContextHandler(config.context, dbAdapter);
|
|
5060
|
+
const contextHandler = new ContextHandler(config.context, dbAdapter, config.telemetry);
|
|
4997
5061
|
await contextHandler.init();
|
|
4998
5062
|
const cronScheduler = new CronScheduler(contextHandler);
|
|
4999
5063
|
cronScheduler.start();
|
|
@@ -5058,39 +5122,51 @@ async function createArcServer(config) {
|
|
|
5058
5122
|
if (req.method === "OPTIONS") {
|
|
5059
5123
|
return new Response(null, { headers: corsHeaders2 });
|
|
5060
5124
|
}
|
|
5061
|
-
const
|
|
5062
|
-
|
|
5063
|
-
|
|
5064
|
-
|
|
5065
|
-
|
|
5066
|
-
|
|
5067
|
-
|
|
5068
|
-
|
|
5125
|
+
const handleRequest = async (span) => {
|
|
5126
|
+
const authHeader = req.headers.get("Authorization");
|
|
5127
|
+
let rawToken = authHeader?.replace("Bearer ", "") || url.searchParams.get("token");
|
|
5128
|
+
if (!rawToken) {
|
|
5129
|
+
const cookieHeader = req.headers.get("Cookie");
|
|
5130
|
+
if (cookieHeader) {
|
|
5131
|
+
const match = cookieHeader.match(/arc_token=([^;]+)/);
|
|
5132
|
+
if (match)
|
|
5133
|
+
rawToken = decodeURIComponent(match[1]);
|
|
5134
|
+
}
|
|
5069
5135
|
}
|
|
5070
|
-
|
|
5071
|
-
|
|
5072
|
-
|
|
5073
|
-
|
|
5074
|
-
return
|
|
5075
|
-
|
|
5076
|
-
|
|
5077
|
-
|
|
5078
|
-
}
|
|
5079
|
-
|
|
5080
|
-
|
|
5081
|
-
|
|
5082
|
-
|
|
5083
|
-
|
|
5136
|
+
const tokenPayload = rawToken ? verifyToken(rawToken) : null;
|
|
5137
|
+
if (url.pathname === "/ws" && req.headers.get("Upgrade") === "websocket") {
|
|
5138
|
+
if (server2.upgrade(req, { data: { clientId: "" } }))
|
|
5139
|
+
return;
|
|
5140
|
+
return new Response("WebSocket upgrade failed", {
|
|
5141
|
+
status: 500,
|
|
5142
|
+
headers: corsHeaders2
|
|
5143
|
+
});
|
|
5144
|
+
}
|
|
5145
|
+
const reqCtx = { rawToken, tokenPayload, corsHeaders: corsHeaders2 };
|
|
5146
|
+
for (const handler of httpHandlers) {
|
|
5147
|
+
const response = await handler(req, url, reqCtx);
|
|
5148
|
+
if (response) {
|
|
5149
|
+
span?.setAttribute("http.response.status_code", response.status);
|
|
5150
|
+
return response;
|
|
5151
|
+
}
|
|
5152
|
+
}
|
|
5153
|
+
span?.setAttribute("http.response.status_code", 404);
|
|
5154
|
+
return new Response("Not Found", { status: 404, headers: corsHeaders2 });
|
|
5084
5155
|
};
|
|
5085
|
-
|
|
5086
|
-
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5093
|
-
|
|
5156
|
+
const telemetry = config.telemetry;
|
|
5157
|
+
if (!telemetry)
|
|
5158
|
+
return handleRequest(undefined);
|
|
5159
|
+
return telemetry.runWithExtractedContext(req.headers, () => telemetry.startSpan(`${req.method} ${url.pathname}`, (span) => handleRequest(span), {
|
|
5160
|
+
kind: 2,
|
|
5161
|
+
attributes: {
|
|
5162
|
+
"http.request.method": req.method,
|
|
5163
|
+
"http.route": url.pathname,
|
|
5164
|
+
"url.scheme": url.protocol.replace(":", ""),
|
|
5165
|
+
"url.path": url.pathname,
|
|
5166
|
+
"server.address": url.host,
|
|
5167
|
+
"user_agent.original": req.headers.get("user-agent") ?? undefined
|
|
5168
|
+
}
|
|
5169
|
+
}));
|
|
5094
5170
|
},
|
|
5095
5171
|
websocket: {
|
|
5096
5172
|
open(ws) {
|
|
@@ -5100,16 +5176,43 @@ async function createArcServer(config) {
|
|
|
5100
5176
|
const client = connectionManager.getClientByWs(ws);
|
|
5101
5177
|
if (!client)
|
|
5102
5178
|
return;
|
|
5179
|
+
let message;
|
|
5103
5180
|
try {
|
|
5104
|
-
|
|
5105
|
-
for (const handler of wsHandlers) {
|
|
5106
|
-
const handled = await handler(client, message, wsCtx);
|
|
5107
|
-
if (handled)
|
|
5108
|
-
break;
|
|
5109
|
-
}
|
|
5181
|
+
message = JSON.parse(messageStr);
|
|
5110
5182
|
} catch (error) {
|
|
5111
5183
|
console.error("Failed to parse WS message:", error);
|
|
5184
|
+
return;
|
|
5112
5185
|
}
|
|
5186
|
+
const dispatch = async () => {
|
|
5187
|
+
try {
|
|
5188
|
+
for (const handler of wsHandlers) {
|
|
5189
|
+
const handled = await handler(client, message, wsCtx);
|
|
5190
|
+
if (handled)
|
|
5191
|
+
break;
|
|
5192
|
+
}
|
|
5193
|
+
} catch (error) {
|
|
5194
|
+
console.error("WS handler error:", error);
|
|
5195
|
+
}
|
|
5196
|
+
};
|
|
5197
|
+
const telemetry = config.telemetry;
|
|
5198
|
+
if (!telemetry) {
|
|
5199
|
+
await dispatch();
|
|
5200
|
+
return;
|
|
5201
|
+
}
|
|
5202
|
+
const carrier = {};
|
|
5203
|
+
if (typeof message?.traceparent === "string")
|
|
5204
|
+
carrier.traceparent = message.traceparent;
|
|
5205
|
+
if (typeof message?.tracestate === "string")
|
|
5206
|
+
carrier.tracestate = message.tracestate;
|
|
5207
|
+
await telemetry.runWithExtractedContext(carrier, () => telemetry.startSpan(`ws.${message?.type ?? "message"}`, () => dispatch(), {
|
|
5208
|
+
kind: 2,
|
|
5209
|
+
attributes: {
|
|
5210
|
+
"messaging.system": "arc-ws",
|
|
5211
|
+
"messaging.operation": "process",
|
|
5212
|
+
"messaging.message.type": message?.type,
|
|
5213
|
+
"arc.ws.client_id": client.id
|
|
5214
|
+
}
|
|
5215
|
+
}));
|
|
5113
5216
|
},
|
|
5114
5217
|
close(ws) {
|
|
5115
5218
|
const client = connectionManager.getClientByWs(ws);
|
|
@@ -5168,5 +5271,5 @@ export {
|
|
|
5168
5271
|
ConnectionManager
|
|
5169
5272
|
};
|
|
5170
5273
|
|
|
5171
|
-
//# debugId=
|
|
5274
|
+
//# debugId=7F7FD59FE83962C764756E2164756E21
|
|
5172
5275
|
//# sourceMappingURL=index.js.map
|