New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@polywrap/client-config-builder-js

Package Overview
Dependencies
Maintainers
2
Versions
32
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@polywrap/client-config-builder-js - npm Package Compare versions

Comparing version 0.10.1 to 0.11.0

build/bundles/sys.d.ts

46

build/BaseClientConfigBuilder.d.ts

@@ -1,29 +0,31 @@

import { BuilderConfig, IClientConfigBuilder } from "./types";
import { BuilderConfig, ClientConfigBuilder } from "./types";
import { BundleName } from "./bundles";
import { CoreClientConfig, Wrapper, IWrapPackage } from "@polywrap/core-js";
import { UriResolverLike } from "@polywrap/uri-resolvers-js";
export declare abstract class BaseClientConfigBuilder implements IClientConfigBuilder {
export declare abstract class BaseClientConfigBuilder implements ClientConfigBuilder {
protected _config: BuilderConfig;
abstract addDefaults(): IClientConfigBuilder;
abstract addDefaults(): ClientConfigBuilder;
abstract addBundle(bundle: BundleName): ClientConfigBuilder;
abstract build(): CoreClientConfig;
get config(): BuilderConfig;
add(config: Partial<BuilderConfig>): IClientConfigBuilder;
addWrapper(uri: string, wrapper: Wrapper): IClientConfigBuilder;
addWrappers(uriWrappers: Record<string, Wrapper>): IClientConfigBuilder;
removeWrapper(uri: string): IClientConfigBuilder;
addPackage(uri: string, wrapPackage: IWrapPackage): IClientConfigBuilder;
addPackages(uriPackages: Record<string, IWrapPackage>): IClientConfigBuilder;
removePackage(uri: string): IClientConfigBuilder;
addEnv(uri: string, env: Record<string, unknown>): IClientConfigBuilder;
addEnvs(envs: Record<string, Record<string, unknown>>): IClientConfigBuilder;
removeEnv(uri: string): IClientConfigBuilder;
setEnv(uri: string, env: Record<string, unknown>): IClientConfigBuilder;
addInterfaceImplementation(interfaceUri: string, implementationUri: string): IClientConfigBuilder;
addInterfaceImplementations(interfaceUri: string, implementationUris: Array<string> | Set<string>): IClientConfigBuilder;
removeInterfaceImplementation(interfaceUri: string, implementationUri: string): IClientConfigBuilder;
addRedirect(from: string, to: string): IClientConfigBuilder;
addRedirects(redirects: Record<string, string>): IClientConfigBuilder;
removeRedirect(from: string): IClientConfigBuilder;
addResolver(resolver: UriResolverLike): IClientConfigBuilder;
addResolvers(resolvers: UriResolverLike[]): IClientConfigBuilder;
add(config: Partial<BuilderConfig>): ClientConfigBuilder;
setWrapper(uri: string, wrapper: Wrapper): ClientConfigBuilder;
setWrappers(uriWrappers: Record<string, Wrapper>): ClientConfigBuilder;
removeWrapper(uri: string): ClientConfigBuilder;
setPackage(uri: string, wrapPackage: IWrapPackage): ClientConfigBuilder;
setPackages(uriPackages: Record<string, IWrapPackage>): ClientConfigBuilder;
removePackage(uri: string): ClientConfigBuilder;
addEnv(uri: string, env: Record<string, unknown>): ClientConfigBuilder;
addEnvs(envs: Record<string, Record<string, unknown>>): ClientConfigBuilder;
removeEnv(uri: string): ClientConfigBuilder;
setEnv(uri: string, env: Record<string, unknown>): ClientConfigBuilder;
addInterfaceImplementation(interfaceUri: string, implementationUri: string): ClientConfigBuilder;
addInterfaceImplementations(interfaceUri: string, implementationUris: Array<string> | Set<string>): ClientConfigBuilder;
removeInterfaceImplementation(interfaceUri: string, implementationUri: string): ClientConfigBuilder;
setRedirect(from: string, to: string): ClientConfigBuilder;
setRedirects(redirects: Record<string, string>): ClientConfigBuilder;
removeRedirect(from: string): ClientConfigBuilder;
addResolver(resolver: UriResolverLike): ClientConfigBuilder;
addResolvers(resolvers: UriResolverLike[]): ClientConfigBuilder;
private sanitizeUri;
}

@@ -76,9 +76,9 @@ "use strict";

if (config.redirects) {
this.addRedirects(config.redirects);
this.setRedirects(config.redirects);
}
if (config.wrappers) {
this.addWrappers(config.wrappers);
this.setWrappers(config.wrappers);
}
if (config.packages) {
this.addPackages(config.packages);
this.setPackages(config.packages);
}

@@ -105,9 +105,9 @@ if (config.interfaces) {

};
BaseClientConfigBuilder.prototype.addWrapper = function (uri, wrapper) {
BaseClientConfigBuilder.prototype.setWrapper = function (uri, wrapper) {
this._config.wrappers[this.sanitizeUri(uri)] = wrapper;
return this;
};
BaseClientConfigBuilder.prototype.addWrappers = function (uriWrappers) {
BaseClientConfigBuilder.prototype.setWrappers = function (uriWrappers) {
for (var uri in uriWrappers) {
this.addWrapper(this.sanitizeUri(uri), uriWrappers[uri]);
this.setWrapper(this.sanitizeUri(uri), uriWrappers[uri]);
}

@@ -120,9 +120,9 @@ return this;

};
BaseClientConfigBuilder.prototype.addPackage = function (uri, wrapPackage) {
BaseClientConfigBuilder.prototype.setPackage = function (uri, wrapPackage) {
this._config.packages[this.sanitizeUri(uri)] = wrapPackage;
return this;
};
BaseClientConfigBuilder.prototype.addPackages = function (uriPackages) {
BaseClientConfigBuilder.prototype.setPackages = function (uriPackages) {
for (var uri in uriPackages) {
this.addPackage(this.sanitizeUri(uri), uriPackages[uri]);
this.setPackage(this.sanitizeUri(uri), uriPackages[uri]);
}

@@ -217,9 +217,9 @@ return this;

};
BaseClientConfigBuilder.prototype.addRedirect = function (from, to) {
BaseClientConfigBuilder.prototype.setRedirect = function (from, to) {
this._config.redirects[this.sanitizeUri(from)] = this.sanitizeUri(to);
return this;
};
BaseClientConfigBuilder.prototype.addRedirects = function (redirects) {
BaseClientConfigBuilder.prototype.setRedirects = function (redirects) {
for (var uri in redirects) {
this.addRedirect(this.sanitizeUri(uri), this.sanitizeUri(redirects[uri]));
this.setRedirect(this.sanitizeUri(uri), this.sanitizeUri(redirects[uri]));
}

@@ -226,0 +226,0 @@ return this;

@@ -1,1 +0,8 @@

export * as DefaultBundle from "./default";
import { ClientConfigBuilder } from "../";
import { Sys } from "./sys";
import { Web3 } from "./web3";
import { Bundle } from "@polywrap/config-bundle-types-js";
export { Sys, Web3 };
export type BundleName = "sys" | "web3";
export declare function getBundle(name: BundleName): Bundle;
export declare function addBundle(name: BundleName, builder: ClientConfigBuilder): ClientConfigBuilder;
"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
var desc = Object.getOwnPropertyDescriptor(m, k);
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
desc = { enumerable: true, get: function() { return m[k]; } };
}
Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
if (k2 === undefined) k2 = k;
o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
o["default"] = v;
});
var __importStar = (this && this.__importStar) || function (mod) {
if (mod && mod.__esModule) return mod;
var result = {};
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
__setModuleDefault(result, mod);
return result;
var __values = (this && this.__values) || function(o) {
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
if (m) return m.call(o);
if (o && typeof o.length === "number") return {
next: function () {
if (o && i >= o.length) o = void 0;
return { value: o && o[i++], done: !o };
}
};
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.DefaultBundle = void 0;
exports.DefaultBundle = __importStar(require("./default"));
exports.addBundle = exports.getBundle = exports.Web3 = exports.Sys = void 0;
var sys_1 = require("./sys");
Object.defineProperty(exports, "Sys", { enumerable: true, get: function () { return sys_1.Sys; } });
var web3_1 = require("./web3");
Object.defineProperty(exports, "Web3", { enumerable: true, get: function () { return web3_1.Web3; } });
/* $ */
function getBundle(name) {
switch (name) {
case "sys":
return sys_1.Sys.bundle;
case "web3":
return web3_1.Web3.bundle;
default:
throw Error("Unknown bundle name \"".concat(name, "\"."));
}
}
exports.getBundle = getBundle;
function addBundle(name, builder) {
var e_1, _a, e_2, _b, e_3, _c;
var bundle = getBundle(name);
try {
for (var _d = __values(Object.values(bundle)), _e = _d.next(); !_e.done; _e = _d.next()) {
var bundlePackage = _e.value;
// Add package
if (bundlePackage.package) {
builder.setPackage(bundlePackage.uri, bundlePackage.package);
}
// Add interface implementations
if (bundlePackage.implements) {
try {
for (var _f = (e_2 = void 0, __values(bundlePackage.implements)), _g = _f.next(); !_g.done; _g = _f.next()) {
var interfaceUri = _g.value;
builder.addInterfaceImplementation(interfaceUri, bundlePackage.uri);
}
}
catch (e_2_1) { e_2 = { error: e_2_1 }; }
finally {
try {
if (_g && !_g.done && (_b = _f.return)) _b.call(_f);
}
finally { if (e_2) throw e_2.error; }
}
}
// Add all redirects
if (bundlePackage.redirectFrom) {
try {
for (var _h = (e_3 = void 0, __values(bundlePackage.redirectFrom)), _j = _h.next(); !_j.done; _j = _h.next()) {
var redirectFrom = _j.value;
builder.setRedirect(redirectFrom, bundlePackage.uri);
}
}
catch (e_3_1) { e_3 = { error: e_3_1 }; }
finally {
try {
if (_j && !_j.done && (_c = _h.return)) _c.call(_h);
}
finally { if (e_3) throw e_3.error; }
}
}
// Add environment
if (bundlePackage.env) {
builder.addEnv(bundlePackage.uri, bundlePackage.env);
}
}
}
catch (e_1_1) { e_1 = { error: e_1_1 }; }
finally {
try {
if (_e && !_e.done && (_a = _d.return)) _a.call(_d);
}
finally { if (e_1) throw e_1.error; }
}
return builder;
}
exports.addBundle = addBundle;
//# sourceMappingURL=index.js.map
export * from "./types";
export * from "./BaseClientConfigBuilder";
export * from "./ClientConfigBuilder";
export * from "./PolywrapClientConfigBuilder";
export * from "./bundles";

@@ -19,4 +19,4 @@ "use strict";

__exportStar(require("./BaseClientConfigBuilder"), exports);
__exportStar(require("./ClientConfigBuilder"), exports);
__exportStar(require("./PolywrapClientConfigBuilder"), exports);
__exportStar(require("./bundles"), exports);
//# sourceMappingURL=index.js.map
export * from "./configs";
export * from "./IClientConfigBuilder";
export * from "./ClientConfigBuilder";
export * from "./BuildOptions";

@@ -18,4 +18,4 @@ "use strict";

__exportStar(require("./configs"), exports);
__exportStar(require("./IClientConfigBuilder"), exports);
__exportStar(require("./ClientConfigBuilder"), exports);
__exportStar(require("./BuildOptions"), exports);
//# sourceMappingURL=index.js.map
{
"name": "@polywrap/client-config-builder-js",
"description": "Polywrap JavaScript Client configuration",
"version": "0.10.1",
"version": "0.11.0",
"license": "MIT",

@@ -15,9 +15,8 @@ "repository": {

"scripts": {
"build": "yarn embed:wrappers && yarn build:fast",
"build": "yarn build:fast",
"build:docs": "yarn build:snippets && yarn build:readme",
"build:fast": "rimraf ./build && tsc --project tsconfig.build.json",
"embed:wrappers": "ts-node ./scripts/embed-wrappers.ts",
"lint": "eslint --color -c ../../.eslintrc.js src/",
"test": "jest --passWithNoTests --runInBand --verbose --config ../../jest.config.js --rootDir .",
"test:watch": "yarn test -- --watch",
"test": "jest --passWithNoTests --runInBand --verbose --rootDir . --config ../../jest.config.js",
"test:watch": "yarn test --watch",
"build:snippets": "tsc --project ./examples/tsconfig.examples.json",

@@ -27,13 +26,10 @@ "build:readme": "yarn doc-snippets combine"

"dependencies": {
"@polywrap/concurrent-plugin-js": "~0.10.0",
"@polywrap/core-js": "0.10.1",
"@polywrap/ethereum-provider-js": "npm:@polywrap/ethereum-provider-js@~0.3.1",
"@polywrap/ethereum-provider-js-v1": "npm:@polywrap/ethereum-provider-js@~0.2.4",
"@polywrap/file-system-plugin-js": "~0.10.0",
"@polywrap/http-plugin-js": "~0.10.0",
"@polywrap/logger-plugin-js": "~0.10.1",
"@polywrap/uri-resolver-extensions-js": "0.10.1",
"@polywrap/uri-resolvers-js": "0.10.1",
"@polywrap/wasm-js": "0.10.1",
"base64-to-uint8array": "1.0.0"
"@polywrap/config-bundle-types-js": "0.11.0",
"@polywrap/core-js": "0.11.0",
"@polywrap/plugin-js": "0.11.0",
"@polywrap/sys-config-bundle-js": "0.11.0",
"@polywrap/uri-resolver-extensions-js": "0.11.0",
"@polywrap/uri-resolvers-js": "0.11.0",
"@polywrap/wasm-js": "0.11.0",
"@polywrap/web3-config-bundle-js": "0.11.0"
},

@@ -50,3 +46,2 @@ "devDependencies": {

},
"gitHead": "7346adaf5adb7e6bbb70d9247583e995650d390a",
"publishConfig": {

@@ -53,0 +48,0 @@ "access": "public"

@@ -15,3 +15,3 @@ # PolywrapClient Config Builder

// start with a blank slate (typical usage)
const builder = new ClientConfigBuilder();
const builder = new PolywrapClientConfigBuilder();
```

@@ -21,3 +21,3 @@

Add client configuration with [add](#add), or flexibly mix and match builder [configuration methods](#addwrapper) to add and remove configuration items.
Add client configuration with [add](#add), or flexibly mix and match builder [configuration methods](#setWrapper) to add and remove configuration items.

@@ -37,7 +37,7 @@ ```typescript

builder
.addPackage("wrap://plugin/package", httpPlugin({}))
.setPackage("wrap://plugin/package", httpPlugin({}) as IWrapPackage)
.removePackage("wrap://plugin/package")
.addPackages({
"wrap://plugin/http": httpPlugin({}),
"wrap://plugin/filesystem": fileSystemPlugin({}),
.setPackages({
"wrap://plugin/http": httpPlugin({}) as IWrapPackage,
"wrap://plugin/filesystem": fileSystemPlugin({}) as IWrapPackage,
});

@@ -75,5 +75,5 @@ ```

```typescript=
```typescript
// init
const builder = new ClientConfigBuilder();
const builder = new PolywrapClientConfigBuilder();

@@ -95,3 +95,3 @@ // add the default bundle first to override its entries later

builder
.addWrapper(
.setWrapper(
"wrap://ens/wrapper.eth",

@@ -104,3 +104,3 @@ await WasmWrapper.from(

.removeWrapper("wrap://ens/wrapper.eth")
.addWrappers({
.setWrappers({
"wrap://ens/wrapper.eth": await WasmWrapper.from(

@@ -114,6 +114,6 @@ new Uint8Array([1, 2, 3]),

builder
.addPackage("wrap://plugin/package", httpPlugin({}))
.setPackage("wrap://plugin/package", httpPlugin({}) as IWrapPackage)
.removePackage("wrap://plugin/package")
.addPackages({
"wrap://plugin/package": httpPlugin({}),
.setPackages({
"wrap://plugin/package": httpPlugin({}) as IWrapPackage,
});

@@ -148,5 +148,5 @@

builder
.addRedirect("wrap://ens/from.eth", "wrap://ens/to.eth")
.setRedirect("wrap://ens/from.eth", "wrap://ens/to.eth")
.removeRedirect("wrap://ens/from.eth")
.addRedirects({
.setRedirects({
"wrap://ens/from.eth": "wrap://ens/to.eth",

@@ -170,3 +170,3 @@ });

/**
* Instantiate a ClientConfigBuilder
* Instantiate a PolywrapClientConfigBuilder
*/

@@ -180,11 +180,11 @@ constructor()

* Add a partial BuilderConfig
* This is equivalent to calling each of the plural add functions: `addEnvs`, `addWrappers`, etc.
* This is equivalent to calling each of the plural add functions: `addEnvs`, `setWrappers`, etc.
*
* @param config: a partial BuilderConfig
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
add(config: Partial<BuilderConfig>): IClientConfigBuilder;
add(config: Partial<BuilderConfig>): ClientConfigBuilder;
```
### addWrapper
### setWrapper
```ts

@@ -196,17 +196,17 @@ /**

* @param wrapper: wrapper to be added
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addWrapper(uri: string, wrapper: Wrapper): IClientConfigBuilder;
setWrapper(uri: string, wrapper: Wrapper): ClientConfigBuilder;
```
### addWrappers
### setWrappers
```ts
/**
* Add one or more embedded wrappers.
* This is equivalent to calling addWrapper for each wrapper.
* This is equivalent to calling setWrapper for each wrapper.
*
* @param uriWrappers: an object where keys are uris and wrappers are value
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addWrappers(uriWrappers: Record<string, Wrapper>): IClientConfigBuilder;
setWrappers(uriWrappers: Record<string, Wrapper>): ClientConfigBuilder;
```

@@ -220,8 +220,8 @@

* @param uri: the wrapper's URI
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
removeWrapper(uri: string): IClientConfigBuilder;
removeWrapper(uri: string): ClientConfigBuilder;
```
### addPackage
### setPackage
```ts

@@ -233,17 +233,17 @@ /**

* @param wrapPackage: package to be added
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addPackage(uri: string, wrapPackage: IWrapPackage): IClientConfigBuilder;
setPackage(uri: string, wrapPackage: IWrapPackage): ClientConfigBuilder;
```
### addPackages
### setPackages
```ts
/**
* Add one or more embedded wrap packages
* This is equivalent to calling addPackage for each package
* This is equivalent to calling setPackage for each package
*
* @param uriPackages: an object where keys are uris and packages are value
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addPackages(uriPackages: Record<string, IWrapPackage>): IClientConfigBuilder;
setPackages(uriPackages: Record<string, IWrapPackage>): ClientConfigBuilder;
```

@@ -257,5 +257,5 @@

* @param uri: the package's URI
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
removePackage(uri: string): IClientConfigBuilder;
removePackage(uri: string): ClientConfigBuilder;
```

@@ -271,5 +271,5 @@

* @param env: an object with the env variables for the uri
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addEnv(uri: string, env: Record<string, unknown>): IClientConfigBuilder;
addEnv(uri: string, env: Record<string, unknown>): ClientConfigBuilder;
```

@@ -284,7 +284,7 @@

* @param uriEnvs: and object where key is the uri and value is the another object with the env variables for the uri
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addEnvs(
uriEnvs: Record<string, Record<string, unknown>>
): IClientConfigBuilder;
): ClientConfigBuilder;
```

@@ -298,5 +298,5 @@

* @param uri: the URI associated with the Env
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
removeEnv(uri: string): IClientConfigBuilder;
removeEnv(uri: string): ClientConfigBuilder;
```

@@ -312,5 +312,5 @@

* @param env: an object with the environment variables for the uri
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
setEnv(uri: string, env: Record<string, unknown>): IClientConfigBuilder;
setEnv(uri: string, env: Record<string, unknown>): ClientConfigBuilder;
```

@@ -325,3 +325,3 @@

* @param implementationUri: the URI of the implementation
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/

@@ -331,3 +331,3 @@ addInterfaceImplementation(

implementationUri: string
): IClientConfigBuilder;
): ClientConfigBuilder;
```

@@ -342,3 +342,3 @@

* @param implementationUris: a list of URIs for the implementations
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/

@@ -348,3 +348,3 @@ addInterfaceImplementations(

implementationUris: Array<string>
): IClientConfigBuilder;
): ClientConfigBuilder;
```

@@ -359,3 +359,3 @@

* @param implementationUri: the URI of the implementation
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/

@@ -365,6 +365,6 @@ removeInterfaceImplementation(

implementationUri: string
): IClientConfigBuilder;
): ClientConfigBuilder;
```
### addRedirect
### setRedirect
```ts

@@ -376,8 +376,8 @@ /**

* @param to: the URI to redirect to
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addRedirect(from: string, to: string): IClientConfigBuilder;
setRedirect(from: string, to: string): ClientConfigBuilder;
```
### addRedirects
### setRedirects
```ts

@@ -388,5 +388,5 @@ /**

* @param redirects: an object where key is from and value is to
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addRedirects(redirects: Record<string, string>): IClientConfigBuilder;
setRedirects(redirects: Record<string, string>): ClientConfigBuilder;
```

@@ -400,5 +400,5 @@

* @param from: the URI that is being redirected
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
removeRedirect(from: string): IClientConfigBuilder;
removeRedirect(from: string): ClientConfigBuilder;
```

@@ -420,5 +420,5 @@

* @param resolver: A UriResolverLike
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addResolver(resolver: UriResolverLike): IClientConfigBuilder;
addResolver(resolver: UriResolverLike): ClientConfigBuilder;
```

@@ -440,5 +440,5 @@

* @param resolvers: A list of UriResolverLike
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addResolvers(resolvers: UriResolverLike[]): IClientConfigBuilder;
addResolvers(resolvers: UriResolverLike[]): ClientConfigBuilder;
```

@@ -451,7 +451,17 @@

*
* @returns IClientConfigBuilder (mutated self)
* @returns ClientConfigBuilder (mutated self)
*/
addDefaults(): IClientConfigBuilder;
addDefaults(): ClientConfigBuilder;
```
### addBundle
```ts
/**
* Add a default configuration bundle
*
* @returns Promise<ClientConfigBuilder> (mutated self)
*/
addBundle(bundle: BundleName): ClientConfigBuilder;
```
### build

@@ -470,172 +480,7 @@ ```ts

### Bundle: DefaultConfig
```ts
export const ipfsProviders: string[] = [
"https://ipfs.wrappers.io",
"https://ipfs.io",
];
export type BundleName = "sys" | "web3";
interface IDefaultEmbed {
uri: Uri;
package: IWrapPackage;
source: Uri;
}
interface IDefaultEmbeds {
ipfsHttpClient: IDefaultEmbed;
ipfsResolver: IDefaultEmbed;
}
export const embeds: IDefaultEmbeds = {
ipfsHttpClient: {
uri: Uri.from("embed/ipfs-http-client@1.0.0"),
package: ipfsHttpClient.wasmPackage,
source: Uri.from("ens/wraps.eth:ipfs-http-client@1.0.0"),
},
ipfsResolver: {
uri: Uri.from("embed/async-ipfs-uri-resolver-ext@1.0.1"),
package: ipfsResolver.wasmPackage,
source: Uri.from("ens/wraps.eth:async-ipfs-uri-resolver-ext@1.0.1"),
},
};
type UriResolverExtBootloader = [IDefaultEmbed, IUriRedirect, ...Uri[]];
export const uriResolverExts: UriResolverExtBootloader = [
embeds.ipfsResolver,
{
from: Uri.from("ens/wraps.eth:ens-text-record-uri-resolver-ext@1.0.1"),
to: Uri.from("ipfs/QmXcHWtKkfrFmcczdMSXH7udsSyV3UJeoWzkaUqGBm1oYs"),
},
Uri.from("ens/wraps.eth:http-uri-resolver-ext@1.0.1"),
Uri.from("ens/wraps.eth:file-system-uri-resolver-ext@1.0.1"),
Uri.from("ens/wraps.eth:ens-uri-resolver-ext@1.0.1"),
Uri.from("ens/wraps.eth:ens-ipfs-contenthash-uri-resolver-ext@1.0.1"),
];
interface IDefaultPlugin {
uri: Uri;
plugin: IWrapPackage;
implements: Uri[];
}
interface IDefaultPlugins {
logger: IDefaultPlugin;
http: IDefaultPlugin;
fileSystem: IDefaultPlugin;
concurrent: IDefaultPlugin;
ethereumProviderV1: IDefaultPlugin;
ethereumProviderV2: IDefaultPlugin;
}
export const plugins: IDefaultPlugins = {
logger: {
uri: Uri.from("plugin/logger@1.0.0"),
plugin: loggerPlugin({}),
implements: [Uri.from("ens/wraps.eth:logger@1.0.0")],
},
http: {
uri: Uri.from("plugin/http@1.1.0"),
plugin: httpPlugin({}),
implements: [
Uri.from("ens/wraps.eth:http@1.1.0"),
Uri.from("ens/wraps.eth:http@1.0.0"),
],
},
fileSystem: {
uri: Uri.from("plugin/file-system@1.0.0"),
plugin: fileSystemPlugin({}),
implements: [Uri.from("ens/wraps.eth:file-system@1.0.0")],
},
concurrent: {
uri: Uri.from("plugin/concurrent@1.0.0"),
plugin: concurrentPromisePlugin({}),
implements: [Uri.from("ens/wraps.eth:concurrent@1.0.0")],
},
ethereumProviderV1: {
uri: Uri.from("plugin/ethereum-provider@1.1.0"),
plugin: EthProviderV1.plugin({
connections: new EthProviderV1.Connections({
networks: {
mainnet: new EthProviderV1.Connection({
provider:
"https://mainnet.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
}),
goerli: new EthProviderV1.Connection({
provider:
"https://goerli.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
}),
},
}),
}),
implements: [
Uri.from("ens/wraps.eth:ethereum-provider@1.1.0"),
Uri.from("ens/wraps.eth:ethereum-provider@1.0.0"),
],
},
ethereumProviderV2: {
uri: Uri.from("plugin/ethereum-provider@2.0.0"),
plugin: EthProvider.plugin({
connections: new EthProvider.Connections({
networks: {
mainnet: new EthProvider.Connection({
provider:
"https://mainnet.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
}),
goerli: new EthProvider.Connection({
provider:
"https://goerli.infura.io/v3/b00b2c2cc09c487685e9fb061256d6a6",
}),
},
}),
}),
implements: [Uri.from("ens/wraps.eth:ethereum-provider@2.0.0")],
},
};
export function getConfig(): BuilderConfig {
const builder = new ClientConfigBuilder();
// Add all embedded packages
for (const embed of Object.values(embeds)) {
builder.addPackage(embed.uri.uri, embed.package);
// Add source redirect
builder.addRedirect(embed.source.uri, embed.uri.uri);
// Add source implementation
builder.addInterfaceImplementation(embed.source.uri, embed.uri.uri);
}
// Add all plugin packages
for (const plugin of Object.values(plugins)) {
builder.addPackage(plugin.uri.uri, plugin.plugin);
// Add all interface implementations & redirects
for (const interfaceUri of plugin.implements) {
builder.addInterfaceImplementation(interfaceUri.uri, plugin.uri.uri);
builder.addRedirect(interfaceUri.uri, plugin.uri.uri);
}
}
// Add all uri-resolver-ext interface implementations
builder.addInterfaceImplementations(
ExtendableUriResolver.defaultExtInterfaceUris[0].uri,
[
uriResolverExts[0].source.uri,
uriResolverExts[1].from.uri,
...uriResolverExts.slice(2).map((x: Uri) => x.uri),
]
);
builder.addRedirect(uriResolverExts[1].from.uri, uriResolverExts[1].to.uri);
// Configure the ipfs-uri-resolver provider endpoints & retry counts
builder.addEnv(embeds.ipfsResolver.source.uri, {
provider: ipfsProviders[0],
fallbackProviders: ipfsProviders.slice(1),
retries: { tryResolveUri: 2, getFile: 2 },
});
return builder.config;
}
```
```
* [sys](https://www.npmjs.com/package/@polywrap/sys-config-bundle-js)
* [web3](https://www.npmjs.com/package/@polywrap/web3-config-bundle-js)

@@ -19,3 +19,3 @@ # PolywrapClient Config Builder

Add client configuration with [add](#add), or flexibly mix and match builder [configuration methods](#addwrapper) to add and remove configuration items.
Add client configuration with [add](#add), or flexibly mix and match builder [configuration methods](#setWrapper) to add and remove configuration items.

@@ -44,3 +44,3 @@ ```typescript

```typescript=
```typescript
$snippet: quickstart-example

@@ -60,13 +60,13 @@ ```

```ts
$snippet: IClientConfigBuilder-add
$snippet: ClientConfigBuilder-add
```
### addWrapper
### setWrapper
```ts
$snippet: IClientConfigBuilder-addWrapper
$snippet: ClientConfigBuilder-setWrapper
```
### addWrappers
### setWrappers
```ts
$snippet: IClientConfigBuilder-addWrappers
$snippet: ClientConfigBuilder-setWrappers
```

@@ -76,13 +76,13 @@

```ts
$snippet: IClientConfigBuilder-removeWrapper
$snippet: ClientConfigBuilder-removeWrapper
```
### addPackage
### setPackage
```ts
$snippet: IClientConfigBuilder-addPackage
$snippet: ClientConfigBuilder-setPackage
```
### addPackages
### setPackages
```ts
$snippet: IClientConfigBuilder-addPackages
$snippet: ClientConfigBuilder-setPackages
```

@@ -92,3 +92,3 @@

```ts
$snippet: IClientConfigBuilder-removePackage
$snippet: ClientConfigBuilder-removePackage
```

@@ -98,3 +98,3 @@

```ts
$snippet: IClientConfigBuilder-addEnv
$snippet: ClientConfigBuilder-addEnv
```

@@ -104,3 +104,3 @@

```ts
$snippet: IClientConfigBuilder-addEnvs
$snippet: ClientConfigBuilder-addEnvs
```

@@ -110,3 +110,3 @@

```ts
$snippet: IClientConfigBuilder-removeEnv
$snippet: ClientConfigBuilder-removeEnv
```

@@ -116,3 +116,3 @@

```ts
$snippet: IClientConfigBuilder-setEnv
$snippet: ClientConfigBuilder-setEnv
```

@@ -122,3 +122,3 @@

```ts
$snippet: IClientConfigBuilder-addInterfaceImplementation
$snippet: ClientConfigBuilder-addInterfaceImplementation
```

@@ -128,3 +128,3 @@

```ts
$snippet: IClientConfigBuilder-addInterfaceImplementations
$snippet: ClientConfigBuilder-addInterfaceImplementations
```

@@ -134,13 +134,13 @@

```ts
$snippet: IClientConfigBuilder-removeInterfaceImplementation
$snippet: ClientConfigBuilder-removeInterfaceImplementation
```
### addRedirect
### setRedirect
```ts
$snippet: IClientConfigBuilder-addRedirect
$snippet: ClientConfigBuilder-setRedirect
```
### addRedirects
### setRedirects
```ts
$snippet: IClientConfigBuilder-addRedirects
$snippet: ClientConfigBuilder-setRedirects
```

@@ -150,3 +150,3 @@

```ts
$snippet: IClientConfigBuilder-removeRedirect
$snippet: ClientConfigBuilder-removeRedirect
```

@@ -156,3 +156,3 @@

```ts
$snippet: IClientConfigBuilder-addResolver
$snippet: ClientConfigBuilder-addResolver
```

@@ -162,3 +162,3 @@

```ts
$snippet: IClientConfigBuilder-addResolvers
$snippet: ClientConfigBuilder-addResolvers
```

@@ -168,8 +168,13 @@

```ts
$snippet: IClientConfigBuilder-addDefaults
$snippet: ClientConfigBuilder-addDefaults
```
### addBundle
```ts
$snippet: ClientConfigBuilder-addBundle
```
### build
```ts
$snippet: IClientConfigBuilder-build
$snippet: ClientConfigBuilder-build
```

@@ -179,5 +184,6 @@

### Bundle: DefaultConfig
```ts
$snippet: getDefaultConfig
```
$snippet: Bundles-bundleNames
```
* [sys](https://www.npmjs.com/package/@polywrap/sys-config-bundle-js)
* [web3](https://www.npmjs.com/package/@polywrap/web3-config-bundle-js)

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc