@unicitylabs/sphere-sdk 0.8.0-dev.4 → 0.8.0-dev.5

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.
@@ -3830,7 +3830,7 @@ function getEmbeddedTrustBase(network) {
3830
3830
  case "dev":
3831
3831
  return TRUSTBASE_DEV;
3832
3832
  default:
3833
- return TRUSTBASE_TESTNET;
3833
+ throw new SphereError(`getEmbeddedTrustBase: unknown network "${network}"`, "INVALID_CONFIG");
3834
3834
  }
3835
3835
  }
3836
3836
  var BaseTrustBaseLoader = class {
@@ -3850,9 +3850,24 @@ var BaseTrustBaseLoader = class {
3850
3850
  // impl/browser/oracle/index.ts
3851
3851
  var BrowserTrustBaseLoader = class extends BaseTrustBaseLoader {
3852
3852
  url;
3853
- constructor(networkOrUrl = "testnet") {
3853
+ /**
3854
+ * @param networkOrUrl - a NetworkType, or a URL to fetch the trust base from
3855
+ * @param fallbackNetwork - network used for the embedded fallback when a URL is
3856
+ * supplied (and the fetch fails). Required when networkOrUrl is a URL — we must
3857
+ * never silently fall back to testnet on a different network.
3858
+ */
3859
+ constructor(networkOrUrl, fallbackNetwork) {
3860
+ if (!networkOrUrl) {
3861
+ throw new SphereError("BrowserTrustBaseLoader: network or trustBaseUrl is required.", "INVALID_CONFIG");
3862
+ }
3854
3863
  if (networkOrUrl.startsWith("/") || networkOrUrl.startsWith("http")) {
3855
- super("testnet");
3864
+ if (!fallbackNetwork) {
3865
+ throw new SphereError(
3866
+ "BrowserTrustBaseLoader: fallbackNetwork is required when a trustBaseUrl is supplied.",
3867
+ "INVALID_CONFIG"
3868
+ );
3869
+ }
3870
+ super(fallbackNetwork);
3856
3871
  this.url = networkOrUrl;
3857
3872
  } else {
3858
3873
  super(networkOrUrl);
@@ -3870,14 +3885,21 @@ var BrowserTrustBaseLoader = class extends BaseTrustBaseLoader {
3870
3885
  return null;
3871
3886
  }
3872
3887
  };
3873
- function createBrowserTrustBaseLoader(networkOrUrl) {
3874
- return new BrowserTrustBaseLoader(networkOrUrl);
3888
+ function createBrowserTrustBaseLoader(networkOrUrl, fallbackNetwork) {
3889
+ return new BrowserTrustBaseLoader(networkOrUrl, fallbackNetwork);
3875
3890
  }
3876
3891
  function createUnicityAggregatorProvider(config) {
3877
3892
  const { trustBaseUrl, network, ...restConfig } = config;
3893
+ if (!trustBaseUrl && !network) {
3894
+ throw new SphereError(
3895
+ "createUnicityAggregatorProvider: network or trustBaseUrl required.",
3896
+ "INVALID_CONFIG"
3897
+ );
3898
+ }
3878
3899
  return new UnicityAggregatorProvider({
3879
3900
  ...restConfig,
3880
- trustBaseLoader: createBrowserTrustBaseLoader(trustBaseUrl ?? network ?? "testnet")
3901
+ // When a URL is supplied, `network` (if any) is the embedded-fallback network.
3902
+ trustBaseLoader: createBrowserTrustBaseLoader(trustBaseUrl ?? network, network)
3881
3903
  });
3882
3904
  }
3883
3905
  var createUnicityOracleProvider = createUnicityAggregatorProvider;
@@ -6753,7 +6775,10 @@ function resolveTokenSyncConfig(network, config) {
6753
6775
  return Object.keys(result).length > 0 ? result : void 0;
6754
6776
  }
6755
6777
  function createBrowserProviders(config) {
6756
- const network = config?.network ?? "mainnet";
6778
+ if (!config?.network) {
6779
+ throw new SphereError("createBrowserProviders: config.network is required.", "INVALID_CONFIG");
6780
+ }
6781
+ const network = config.network;
6757
6782
  if (config?.debug !== void 0) {
6758
6783
  logger.configure({ debug: config.debug });
6759
6784
  }