@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.
@@ -3878,7 +3878,7 @@ function getEmbeddedTrustBase(network) {
3878
3878
  case "dev":
3879
3879
  return TRUSTBASE_DEV;
3880
3880
  default:
3881
- return TRUSTBASE_TESTNET;
3881
+ throw new SphereError(`getEmbeddedTrustBase: unknown network "${network}"`, "INVALID_CONFIG");
3882
3882
  }
3883
3883
  }
3884
3884
  var BaseTrustBaseLoader = class {
@@ -3898,9 +3898,24 @@ var BaseTrustBaseLoader = class {
3898
3898
  // impl/browser/oracle/index.ts
3899
3899
  var BrowserTrustBaseLoader = class extends BaseTrustBaseLoader {
3900
3900
  url;
3901
- constructor(networkOrUrl = "testnet") {
3901
+ /**
3902
+ * @param networkOrUrl - a NetworkType, or a URL to fetch the trust base from
3903
+ * @param fallbackNetwork - network used for the embedded fallback when a URL is
3904
+ * supplied (and the fetch fails). Required when networkOrUrl is a URL — we must
3905
+ * never silently fall back to testnet on a different network.
3906
+ */
3907
+ constructor(networkOrUrl, fallbackNetwork) {
3908
+ if (!networkOrUrl) {
3909
+ throw new SphereError("BrowserTrustBaseLoader: network or trustBaseUrl is required.", "INVALID_CONFIG");
3910
+ }
3902
3911
  if (networkOrUrl.startsWith("/") || networkOrUrl.startsWith("http")) {
3903
- super("testnet");
3912
+ if (!fallbackNetwork) {
3913
+ throw new SphereError(
3914
+ "BrowserTrustBaseLoader: fallbackNetwork is required when a trustBaseUrl is supplied.",
3915
+ "INVALID_CONFIG"
3916
+ );
3917
+ }
3918
+ super(fallbackNetwork);
3904
3919
  this.url = networkOrUrl;
3905
3920
  } else {
3906
3921
  super(networkOrUrl);
@@ -3918,14 +3933,21 @@ var BrowserTrustBaseLoader = class extends BaseTrustBaseLoader {
3918
3933
  return null;
3919
3934
  }
3920
3935
  };
3921
- function createBrowserTrustBaseLoader(networkOrUrl) {
3922
- return new BrowserTrustBaseLoader(networkOrUrl);
3936
+ function createBrowserTrustBaseLoader(networkOrUrl, fallbackNetwork) {
3937
+ return new BrowserTrustBaseLoader(networkOrUrl, fallbackNetwork);
3923
3938
  }
3924
3939
  function createUnicityAggregatorProvider(config) {
3925
3940
  const { trustBaseUrl, network, ...restConfig } = config;
3941
+ if (!trustBaseUrl && !network) {
3942
+ throw new SphereError(
3943
+ "createUnicityAggregatorProvider: network or trustBaseUrl required.",
3944
+ "INVALID_CONFIG"
3945
+ );
3946
+ }
3926
3947
  return new UnicityAggregatorProvider({
3927
3948
  ...restConfig,
3928
- trustBaseLoader: createBrowserTrustBaseLoader(trustBaseUrl ?? network ?? "testnet")
3949
+ // When a URL is supplied, `network` (if any) is the embedded-fallback network.
3950
+ trustBaseLoader: createBrowserTrustBaseLoader(trustBaseUrl ?? network, network)
3929
3951
  });
3930
3952
  }
3931
3953
  var createUnicityOracleProvider = createUnicityAggregatorProvider;
@@ -6801,7 +6823,10 @@ function resolveTokenSyncConfig(network, config) {
6801
6823
  return Object.keys(result).length > 0 ? result : void 0;
6802
6824
  }
6803
6825
  function createBrowserProviders(config) {
6804
- const network = config?.network ?? "mainnet";
6826
+ if (!config?.network) {
6827
+ throw new SphereError("createBrowserProviders: config.network is required.", "INVALID_CONFIG");
6828
+ }
6829
+ const network = config.network;
6805
6830
  if (config?.debug !== void 0) {
6806
6831
  logger.configure({ debug: config.debug });
6807
6832
  }