@calimero-network/mero-js 29.5.0 → 29.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -37,6 +37,7 @@ __export(index_exports, {
37
37
  BadOrigin: () => BadOrigin,
38
38
  CalimeroClient: () => CalimeroClient,
39
39
  CalimeroError: () => CalimeroError,
40
+ ClusterNotUpgraded: () => ClusterNotUpgraded,
40
41
  ConfirmCancelled: () => ConfirmCancelled,
41
42
  ConfirmRequired: () => ConfirmRequired,
42
43
  ConsentStale: () => ConsentStale,
@@ -55,10 +56,12 @@ __export(index_exports, {
55
56
  MOCK_QUOTE_HEADER: () => MOCK_QUOTE_HEADER,
56
57
  NODE_RELEASE_SIGNER: () => NODE_RELEASE_SIGNER,
57
58
  NotFound: () => NotFound,
59
+ NotServing: () => NotServing,
58
60
  ORG_CAPABILITIES: () => ORG_CAPABILITIES,
59
61
  OriginNotRegistered: () => OriginNotRegistered,
60
62
  OriginTaken: () => OriginTaken,
61
63
  PRODUCTION_PROFILE: () => PRODUCTION_PROFILE,
64
+ PasskeyUnknownHere: () => PasskeyUnknownHere,
62
65
  QuotaExceeded: () => QuotaExceeded,
63
66
  RECOVERY_DOMAIN: () => RECOVERY_DOMAIN,
64
67
  RELEASE_VERIFIER: () => RELEASE_VERIFIER,
@@ -1472,6 +1475,17 @@ var LoginRequired = class extends CalimeroError {
1472
1475
  this.name = "LoginRequired";
1473
1476
  }
1474
1477
  };
1478
+ var PasskeyUnknownHere = class extends CalimeroError {
1479
+ constructor(message, details = {}) {
1480
+ super(
1481
+ 401,
1482
+ "PASSKEY_UNKNOWN_HERE",
1483
+ message || "this passkey belongs to another Calimero cluster or was removed from this one",
1484
+ details
1485
+ );
1486
+ this.name = "PasskeyUnknownHere";
1487
+ }
1488
+ };
1475
1489
  var WrongNode = class extends CalimeroError {
1476
1490
  constructor(message, details = {}) {
1477
1491
  super(421, "WRONG_NODE", message, details);
@@ -1547,6 +1561,18 @@ var OriginTaken = class extends CalimeroError {
1547
1561
  this.name = "OriginTaken";
1548
1562
  }
1549
1563
  };
1564
+ var NotServing = class extends CalimeroError {
1565
+ constructor(message, details = {}) {
1566
+ super(400, "NOT_SERVING", message, details);
1567
+ this.name = "NotServing";
1568
+ }
1569
+ };
1570
+ var ClusterNotUpgraded = class extends CalimeroError {
1571
+ constructor(message, details = {}) {
1572
+ super(409, "CLUSTER_NOT_UPGRADED", message, details);
1573
+ this.name = "ClusterNotUpgraded";
1574
+ }
1575
+ };
1550
1576
  var RecoveryNotReady = class extends CalimeroError {
1551
1577
  constructor(message, details = {}) {
1552
1578
  super(409, "RECOVERY_NOT_READY", message, details);
@@ -1630,6 +1656,8 @@ function errorFrom(status, body, retryAfterHeader) {
1630
1656
  switch (`${status} ${code}`) {
1631
1657
  case "401 UNAUTHENTICATED":
1632
1658
  return new LoginRequired(message, details);
1659
+ case "401 PASSKEY_UNKNOWN_HERE":
1660
+ return new PasskeyUnknownHere(message, details);
1633
1661
  case "421 WRONG_NODE":
1634
1662
  return new WrongNode(message, details);
1635
1663
  case "404 NOT_FOUND":
@@ -1647,6 +1675,10 @@ function errorFrom(status, body, retryAfterHeader) {
1647
1675
  return new BadOrigin(code, message, details);
1648
1676
  case "409 ORIGIN_TAKEN":
1649
1677
  return new OriginTaken(message, details);
1678
+ case "400 NOT_SERVING":
1679
+ return new NotServing(message, details);
1680
+ case "409 CLUSTER_NOT_UPGRADED":
1681
+ return new ClusterNotUpgraded(message, details);
1650
1682
  case "429 QUOTA_EXCEEDED":
1651
1683
  return new QuotaExceeded(message, details);
1652
1684
  case "409 RECOVERY_NOT_READY":
@@ -2022,7 +2054,13 @@ var CalimeroClient = class _CalimeroClient {
2022
2054
  add: (pkg, origin, passkey, options = {}) => this.confirmed(
2023
2055
  "POST",
2024
2056
  `package-origins/${seg(pkg)}`,
2025
- options.rpId === void 0 ? { origin } : { origin, rpId: options.rpId },
2057
+ // Only the fields set: the node refuses unknown ones, and one that
2058
+ // predates served origins takes a plain add unchanged.
2059
+ {
2060
+ origin,
2061
+ ...options.rpId === void 0 ? {} : { rpId: options.rpId },
2062
+ ...options.served ? { served: true } : {}
2063
+ },
2026
2064
  passkey
2027
2065
  ),
2028
2066
  remove: (pkg, origin, passkey) => this.confirmed("DELETE", `package-origins/${seg(pkg)}`, { origin }, passkey)
@@ -2320,7 +2358,8 @@ var CalimeroClient = class _CalimeroClient {
2320
2358
  * cluster's ({@link SignInOptions}), the assertion is made for that
2321
2359
  * origin's relying-party id, as the node answers it, and the session is
2322
2360
  * bound to the origin's package; an unregistered origin is refused with
2323
- * {@link OriginNotRegistered}.
2361
+ * {@link OriginNotRegistered}. A passkey this cluster does not know (made
2362
+ * on another cluster, or removed) is refused with {@link PasskeyUnknownHere}.
2324
2363
  */
2325
2364
  async signIn(passkey, options = {}) {
2326
2365
  const origin = this.pageOrigin(options);
@@ -3058,6 +3097,14 @@ var CalimeroClient = class _CalimeroClient {
3058
3097
  opsOrgs(page = {}) {
3059
3098
  return this.get(`ops/orgs${pageQuery(page)}`);
3060
3099
  }
3100
+ /**
3101
+ * `GET /ops/served-origins`: every served origin (custom domain) the
3102
+ * cluster's log holds, with its package's label and no package name or
3103
+ * account. Operator token.
3104
+ */
3105
+ opsServedOrigins() {
3106
+ return this.get("ops/served-origins");
3107
+ }
3061
3108
  /**
3062
3109
  * Announce when work on images older than `version` ends: from `after` on,
3063
3110
  * a scope that has not approved it (or newer) starts no new work. Operator