Compare commits

...

3 Commits

Author SHA1 Message Date
semantic-release-bot 998dfc0e75 chore(release): 0.1.0-develop.15 [skip ci]
# [0.1.0-develop.15](https://git.lumeweb.com/LumeWeb/kernel-ipfs/compare/v0.1.0-develop.14...v0.1.0-develop.15) (2023-07-31)

### Bug Fixes

* add delegatedContentRouting back for now ([6298d8e](6298d8e914))
2023-07-31 16:04:37 +00:00
Derrick Hammer a6187d2c0f
Merge remote-tracking branch 'origin/develop' into develop 2023-07-31 12:03:18 -04:00
Derrick Hammer 6298d8e914
fix: add delegatedContentRouting back for now 2023-07-31 12:03:06 -04:00
5 changed files with 38 additions and 3 deletions

View File

@ -1,3 +1,10 @@
# [0.1.0-develop.15](https://git.lumeweb.com/LumeWeb/kernel-ipfs/compare/v0.1.0-develop.14...v0.1.0-develop.15) (2023-07-31)
### Bug Fixes
* add delegatedContentRouting back for now ([6298d8e](https://git.lumeweb.com/LumeWeb/kernel-ipfs/commit/6298d8e914eafdc62a23b0bad548902545489c4e))
# [0.1.0-develop.14](https://git.lumeweb.com/LumeWeb/kernel-ipfs/compare/v0.1.0-develop.13...v0.1.0-develop.14) (2023-07-31)

4
npm-shrinkwrap.json generated
View File

@ -1,12 +1,12 @@
{
"name": "@lumeweb/kernel-ipfs",
"version": "0.1.0-develop.14",
"version": "0.1.0-develop.15",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@lumeweb/kernel-ipfs",
"version": "0.1.0-develop.14",
"version": "0.1.0-develop.15",
"hasInstallScript": true,
"dependencies": {
"@helia/ipns": "^1.1.3",

View File

@ -1,6 +1,6 @@
{
"name": "@lumeweb/kernel-ipfs",
"version": "0.1.0-develop.14",
"version": "0.1.0-develop.15",
"type": "module",
"readme": "ERROR: No README data found!",
"repository": {

View File

@ -15,6 +15,24 @@ import { hypercoreTransport } from "./libp2p/transport.js";
import { MultiSocketProxy } from "@lumeweb/libhyperproxy";
import { ipniContentRouting } from "@libp2p/ipni-content-routing";
import { reframeContentRouting } from "@libp2p/reframe-content-routing";
import { multiaddr } from "@multiformats/multiaddr";
import { create as createIpfsHttpClient } from "ipfs-http-client";
import { delegatedContentRouting } from "@libp2p/delegated-content-routing";
import { DELEGATE_LIST } from "./constants.js";
function getDelegateConfig(): any {
const delegateString =
DELEGATE_LIST[Math.floor(Math.random() * DELEGATE_LIST.length)];
const delegateAddr = multiaddr(delegateString).toOptions();
return {
// @ts-ignore
host: delegateAddr.host,
// @ts-ignore
protocol: parseInt(delegateAddr.port) === 443 ? "https" : "http",
port: delegateAddr.port,
};
}
export function libp2pConfig(proxy: MultiSocketProxy): Libp2pOptions<{
dht: DualKadDHT;
@ -22,6 +40,8 @@ export function libp2pConfig(proxy: MultiSocketProxy): Libp2pOptions<{
identify: unknown;
autoNAT: unknown;
}> {
const client = createIpfsHttpClient(getDelegateConfig());
return {
addresses: {
listen: [],
@ -31,6 +51,7 @@ export function libp2pConfig(proxy: MultiSocketProxy): Libp2pOptions<{
streamMuxers: [yamux(), mplex()],
peerDiscovery: [bootstrap(bootstrapConfig)],
contentRouters: [
delegatedContentRouting(client),
ipniContentRouting("https://cid.contact"),
reframeContentRouting("https://cid.contact/reframe"),
],

View File

@ -1 +1,8 @@
export const PROTOCOL = "lumeweb.proxy.ipfs";
export const DELEGATE_LIST = [
"/dns4/node0.delegate.ipfs.io/tcp/443/https",
"/dns4/node1.delegate.ipfs.io/tcp/443/https",
"/dns4/node2.delegate.ipfs.io/tcp/443/https",
"/dns4/node3.delegate.ipfs.io/tcp/443/https",
];