@fireproof/core 0.7.2 → 0.7.3-dev.2
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/loader.js +4 -0
- package/dist/src/fireproof.js +51 -4
- package/dist/src/fireproof.js.map +1 -1
- package/dist/src/fireproof.mjs +51 -4
- package/dist/src/fireproof.mjs.map +1 -1
- package/dist/storage/ucan.js +40 -0
- package/package.json +5 -1
- package/src/loader.js +5 -0
- package/src/storage/ucan.js +45 -0
package/dist/loader.js
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
import { Browser } from './storage/browser.js';
|
2
2
|
import { Rest } from './storage/rest.js';
|
3
|
+
import { UCAN } from './storage/ucan.js';
|
3
4
|
export const Loader = {
|
4
5
|
appropriate: (name, config = {}) => {
|
5
6
|
if (config.StorageClass) {
|
@@ -8,6 +9,9 @@ export const Loader = {
|
|
8
9
|
if (config.type === 'rest') {
|
9
10
|
return new Rest(name, config);
|
10
11
|
}
|
12
|
+
if (config.type === 'ucan') {
|
13
|
+
return new UCAN(name, config);
|
14
|
+
}
|
11
15
|
return new Browser(name, config);
|
12
16
|
}
|
13
17
|
};
|
package/dist/src/fireproof.js
CHANGED
@@ -39376,7 +39376,7 @@ const blocksFromEncryptedCarBlock = async (cid, get, keyMaterial) => {
|
|
39376
39376
|
}
|
39377
39377
|
};
|
39378
39378
|
|
39379
|
-
const defaultConfig$
|
39379
|
+
const defaultConfig$2 = {
|
39380
39380
|
headerKeyPrefix: 'fp.'
|
39381
39381
|
};
|
39382
39382
|
|
@@ -39384,7 +39384,7 @@ const defaultConfig$1 = {
|
|
39384
39384
|
|
39385
39385
|
class Browser extends Base {
|
39386
39386
|
constructor (name, config = {}) {
|
39387
|
-
super(name, Object.assign({}, defaultConfig$
|
39387
|
+
super(name, Object.assign({}, defaultConfig$2, config));
|
39388
39388
|
}
|
39389
39389
|
|
39390
39390
|
withDB = async dbWorkFun => {
|
@@ -40006,13 +40006,13 @@ var browserPonyfill = {
|
|
40006
40006
|
|
40007
40007
|
var fetch = /*@__PURE__*/getDefaultExportFromCjs(browserPonyfillExports);
|
40008
40008
|
|
40009
|
-
const defaultConfig = {
|
40009
|
+
const defaultConfig$1 = {
|
40010
40010
|
url: 'http://localhost:4000'
|
40011
40011
|
};
|
40012
40012
|
|
40013
40013
|
class Rest extends Base {
|
40014
40014
|
constructor (name, config = {}) {
|
40015
|
-
super(name, Object.assign({}, defaultConfig, config));
|
40015
|
+
super(name, Object.assign({}, defaultConfig$1, config));
|
40016
40016
|
// console.log('Rest', name, config)
|
40017
40017
|
}
|
40018
40018
|
|
@@ -40064,6 +40064,49 @@ class Rest extends Base {
|
|
40064
40064
|
}
|
40065
40065
|
}
|
40066
40066
|
|
40067
|
+
const defaultConfig = {
|
40068
|
+
upload: () => {},
|
40069
|
+
url: (cid) => `https://${cid}.ipfs.w3s.link/`
|
40070
|
+
};
|
40071
|
+
|
40072
|
+
class UCAN extends Base {
|
40073
|
+
constructor (name, config = {}) {
|
40074
|
+
super(name, Object.assign({}, defaultConfig, config));
|
40075
|
+
}
|
40076
|
+
|
40077
|
+
async writeCars (cars) {
|
40078
|
+
if (this.config.readonly) return
|
40079
|
+
for (const { cid, bytes } of cars) {
|
40080
|
+
console.log(`write UCAN ${cid}, ${bytes.length} bytes`);
|
40081
|
+
const upCid = await this.config.upload(bytes);
|
40082
|
+
console.log(`wrote UCAN ${cid}, ${upCid}`);
|
40083
|
+
// if (!response.ok) throw new Error(`An error occurred: ${response.statusText}`)
|
40084
|
+
}
|
40085
|
+
}
|
40086
|
+
|
40087
|
+
async readCar (carCid) {
|
40088
|
+
const carURL = this.config.url(carCid);
|
40089
|
+
const response = await fetch(carURL);
|
40090
|
+
if (!response.ok) throw new Error(`An error occurred: ${response.statusText}`)
|
40091
|
+
const got = await response.arrayBuffer();
|
40092
|
+
return new Uint8Array(got)
|
40093
|
+
}
|
40094
|
+
|
40095
|
+
async loadHeader (branch = 'main') {
|
40096
|
+
return headerMock.get(branch)
|
40097
|
+
}
|
40098
|
+
|
40099
|
+
async writeHeader (branch, header) {
|
40100
|
+
if (this.config.readonly) return
|
40101
|
+
const pHeader = this.prepareHeader(header);
|
40102
|
+
// console.log('writeHeader rt', branch, pHeader)
|
40103
|
+
|
40104
|
+
headerMock.set(branch, pHeader);
|
40105
|
+
}
|
40106
|
+
}
|
40107
|
+
|
40108
|
+
const headerMock = new Map();
|
40109
|
+
|
40067
40110
|
const Loader = {
|
40068
40111
|
appropriate: (name, config = {}) => {
|
40069
40112
|
if (config.StorageClass) {
|
@@ -40074,6 +40117,10 @@ const Loader = {
|
|
40074
40117
|
return new Rest(name, config)
|
40075
40118
|
}
|
40076
40119
|
|
40120
|
+
if (config.type === 'ucan') {
|
40121
|
+
return new UCAN(name, config)
|
40122
|
+
}
|
40123
|
+
|
40077
40124
|
return new Browser(name, config)
|
40078
40125
|
}
|
40079
40126
|
};
|